Systems and methods for operating an autonomous vehicle

ABSTRACT

An autonomous vehicle (AV) includes features that allows the AV to comply with applicable regulations and statutes for performing safe driving operation. Example embodiments relate to an autonomous vehicle having a trailer coupled to a rear thereof. An example method includes continuously predicting a trailer trajectory that is distinct from a planned trajectory of the autonomous vehicle. The method further includes determining that the predicted trailer trajectory is within a minimum avoidance distance away from a stationary vehicle located on a roadway on which the autonomous vehicle is located. The method further includes modifying the planned trajectory of the autonomous vehicle such that the predicted trailer trajectory satisfies the minimum avoidance distance. The method further includes causing the autonomous vehicle to navigate along the modified trajectory based on transmitting instructions to one or more subsystems of the autonomous vehicle.

PRIORITY CLAIMS AND RELATED PATENT APPLICATIONS

This patent document claims the priority to and the benefits of U.S.Provisional Application No. 63/255,839 entitled “SYSTEM AND METHOD FORAN AUTONOMOUS VEHICLE” filed on Oct. 14, 2021. The entire disclosure ofthe aforementioned application is hereby incorporated by reference aspart of the disclosure of this application.

TECHNICAL FIELD

The present disclosure relates generally to autonomous vehicles. Moreparticularly, the present disclosure is related to operating anautonomous vehicle (AV) appropriately on public roads, highways, andlocations with other vehicles or pedestrians.

BACKGROUND

One aim of autonomous vehicle technologies is to provide vehicles thatcan safely navigate towards a destination with limited or no driverassistance. The safe navigation of an autonomous vehicle (AV) from onepoint to another may include the ability to signal other vehicles,navigating around other vehicles in shoulders or emergency lanes,changing lanes, biasing appropriately in a lane, and navigate allportions or types of highway lanes. Autonomous vehicle technologies mayenable an AV to operate without requiring extensive learning or trainingby surrounding drivers, by ensuring that the AV can operate safely, in away that is evident, logical, or familiar to surrounding drivers andpedestrians.

SUMMARY

Systems and methods are described herein that can allow an autonomousvehicle to navigate from a first point to a second point. In someembodiments, the AV can navigate from the first point to the secondpoint without a human driver present in the AV and to comply withinstructions for safe and lawful operation.

In one exemplary aspect, a method of operating an autonomous vehicle isdisclosed. The method includes detecting that a motorcycle is operatingon a roadway on which the autonomous vehicle is located. The methodfurther includes classifying a behavior state of the motorcycle based ona location of the motorcycle relative to a split zone that extendsbetween and into two adjacent lanes of the roadway, wherein the behaviorstate indicates whether the motorcycle is lane splitting. The methodfurther includes determining, based on the behavior state of themotorcycle, a lane permission parameter for the autonomous vehicle thatcontrols whether a given trajectory determined for the autonomousvehicle is permitted to extend into one of the two adjacent lanes. Themethod further includes causing the autonomous vehicle to operate inaccordance with a trajectory that satisfies the lane permissionparameter based on transmitting instructions related to the trajectoryto one or more subsystems of the autonomous vehicle.

In some embodiments, the given trajectory is determined by a navigationmodule that is logically downstream of the controller. In someembodiments, the trajectory is configured, based on the behavior stateindicating that the motorcycle is lane splitting, to bias the autonomousvehicle within a current lane of the autonomous vehicle away from thelocation of the motorcycle.

In some embodiments, the split zone extends into each of the twoadjacent lanes by a given distance that leaves a width of the autonomousvehicle in the adjacent lane. In some embodiments, the split zoneextends into each of the two adjacent lanes by a given distance that isless than half of a width of the adjacent lane. In some embodiments, thesplit zone extends into each of the two adjacent lanes by a givendistance that corresponds to respective widths of the two adjacent lanesand a curvature of the two adjacent lanes.

In some embodiments, the lane permission parameter is determined furtherbased on whether a jurisdiction in which the autonomous vehicle islocated permits lane splitting of motorcycles. In some embodiments,causing the autonomous vehicle to operate in accordance with the lanepermission parameter includes causing the autonomous vehicle to movefrom a current lane to a different lane before the autonomous vehicle iswithin a pre-determined distance from the motorcycle.

In some embodiments, the lane permission parameter is further determinedbased on whether a jurisdiction within which the autonomous vehicle islocated permits lane splitting of motorcycles. In some embodiments, thelane permission parameter does not permit the given trajectory into oneof the two adjacent lanes in response to a jurisdiction within which theautonomous vehicle is located not permitting lane splitting ofmotorcycles. In some embodiments, the lane permission parameter permitsthe given trajectory into one of the two adjacent lanes in response to ajurisdiction within which the autonomous vehicle is located permittinglane splitting of motorcycles.

In some embodiments, the method further includes, in response to (i) thebehavior state indicating that the motorcycle is lane splitting and (ii)a jurisdiction within which the autonomous vehicle is located notpermitting lane splitting of motorcycles, automatically indicating analert to an operator associated with the autonomous vehicle thatincludes the behavior state of the motorcycle. In some embodiments, themethod further includes classifying the motorcycle as a two-wheelmotorcycle or a three-wheel motorcycle, and the lane permissionparameter is further determined based on the classifying. In someembodiments, the lane permission parameter does not permit the giventrajectory to extend into one of the two adjacent lanes based on themotorcycle being a three-wheel motorcycle.

In some embodiments, detecting that the motorcycle is operating on theroadway includes: obtaining a point cloud that captures the motorcyclefrom one or more light detection and ranging (LiDAR) sensing deviceslocated on the autonomous vehicle, filtering a subset of the point cloudthat is attributed to a micro-Doppler effect of wheels of themotorcycle, and determining a bounding box and the location of themotorcycle using the filtered point cloud. In some embodiments,detecting that the motorcycle is operating on the roadway includes:identifying the motorcycle in image data captured by one or more cameraslocated on the autonomous vehicle, tracking the motorcycle in one ormore subsequent sets of image data captured by the one or more cameras,and dynamically updating the location of the motorcycle based on thetracking. In some embodiments, detecting that the motorcycle isoperating on the roadway includes: identifying the motorcycle in radardata obtained from one or more radar devices located on the autonomousvehicle, and determining the location of the motorcycle from the radardata. In some embodiments, detecting that the motorcycle is operating onthe roadway includes classifying a detected vehicle as a motorcycle dueto the detected vehicle having three or fewer wheels.

In some embodiments, the method further includes detecting that a groupof motorcycles is operating on the roadway, and the group of motorcyclesare each located within a pre-determined distance away from one anotherand includes the motorcycle. The method further includes determining anaggregate footprint area that surrounds respective locations of thegroup of motorcycles. The method further includes causing navigation ofthe autonomous vehicle that both satisfies the lane permission parameterand avoids penetration of the aggregate footprint area.

In another exemplary aspect, a method of operating an autonomous vehicleis disclosed. The method includes detecting that a group of motorcyclesis operating on a roadway on which the autonomous vehicle is located,the group of motorcycles being each located within a pre-determineddistance away from one another. The method further includes determiningan aggregate footprint area that surrounds respective locations of thegroup of motorcycles. The method further includes causing navigation ofthe autonomous vehicle that avoids penetration of the aggregatefootprint area based on transmitting navigation instructions to one ormore subsystems of the autonomous vehicle.

In some embodiments, causing navigation of the autonomous vehicle thatavoids penetration of the aggregate footprint area includes determininga trajectory for the autonomous vehicle that maintains a minimum lateraldistance away from the aggregate footprint area. In some embodiments,causing navigation of the autonomous vehicle that avoids penetration ofthe aggregate footprint area includes: associating the aggregatefootprint area to one or more particular lanes of the roadway, andrestricting the autonomous vehicle from entering the one or moreparticular lanes of the roadway.

In some embodiments, the method further includes dynamically updatingthe aggregate footprint area based on whether an individual motorcycleremains within the pre-determined distance away from other motorcyclesof the group. In some embodiments, the method further includesdynamically redefining the group of motorcycles in response to anindividual motorcycle no longer being located within the pre-determineddistance away from other motorcycles of the group. In some embodiments,the method further includes dynamically redefining the group ofmotorcycles in response to detecting an additional motorcycle that hasentered the pre-determined distance away from motorcycles of the group.

In some embodiments, the group of motorcycles is detected based on eachof the motorcycles being located within a same lane of the roadway. Insome embodiments, the group of motorcycles is detected based on thegroup of motorcycles each travelling at respective speeds that arewithin a pre-determined range of each other. In some embodiments, thegroup of motorcycles is detected based on a line-of-sight extendingbetween two respective motorcycles being unobstructed by anothervehicle.

In some embodiments, detecting that the group of motorcycles isoperating on the roadway includes: obtaining a point cloud that capturesan individual motorcycle from one or more LiDAR sensing devices locatedon the autonomous vehicle, filtering a subset of the point cloud that isattributed to a micro-Doppler effect of wheels of the individualmotorcycle, and determining a bounding box and the location of theindividual motorcycle using the filtered point cloud. In someembodiments, detecting that the group of motorcycles is operating on theroadway includes: identifying an individual motorcycle in image datacaptured by one or more cameras located on the autonomous vehicle,tracking the individual motorcycle in one or more subsequent sets ofimage data captured by the one or more cameras, and dynamically updatingthe location of the individual motorcycle based on the tracking. In someembodiments, detecting that the group of motorcycles is operating on theroadway includes: identifying an individual motorcycle in radar dataobtained from one or more radar devices located on the autonomousvehicle, and determining the location of the individual motorcycle fromthe radar data. In some embodiments, detecting that the group ofmotorcycles is operating on the roadway includes classifying a detectedvehicle as an individual motorcycle due to the detected vehicle havingthree or fewer wheels.

In some embodiments, the method further includes classifying a behaviorstate of an individual motorcycle based on a location of the individualmotorcycle relative to a split zone that extends between and into twoadjacent lanes of the roadway, the behavior state indicating whether themotorcycle is lane splitting. The method further includes determining,based on the behavior state of the motorcycle, a lane permissionparameter for the autonomous vehicle that controls whether a giventrajectory determined for the autonomous vehicle is permitted to extendinto one of the two adjacent lanes. The method further includes causingthe autonomous vehicle to operate in accordance with a trajectory thatboth satisfies the lane permission parameter and avoids penetration ofthe aggregate footprint area.

In yet another exemplary aspect, a method of operating an autonomousvehicle is disclosed. The method includes detecting, via sensor datacollected from sensors located on the autonomous vehicle, an upcomingobject located on a roadway on which the autonomous vehicle is located.The method further includes determining, from the sensor data, arelative distance and a relative direction of the upcoming object withrespect to the autonomous vehicle. The method further includes mappingthe upcoming object to an absolute location with respect to the roadwaybased on (i) map data that describes upcoming topology of the roadwayand (ii) a location of the autonomous vehicle within the roadway. Themethod further includes associating the upcoming object with a lane ofthe roadway based on the absolute location mapped to the upcoming objectand based on lane geometry data for the roadway. The method furtherincludes operating the autonomous vehicle based on a relationshipbetween the lane associated with the upcoming object and a current lanein which the autonomous vehicle is located.

In some embodiments, the method further includes tracking changes to theabsolute location of the upcoming object for at least a length of timethat the autonomous vehicle is approaching the upcoming object, andupdating the lane associated with the upcoming object based on thetracked changes. In some embodiments, the method further includesclassifying the upcoming object as a static object or a moving object,and the autonomous vehicle is operated further based on whether theupcoming object is classified as a static object or a moving object. Insome embodiments, the method further includes, in response toclassifying the upcoming object as a moving object, updating theabsolute location of the upcoming object at a pre-determined frequency.In some embodiments, the method further includes, in response toclassifying the upcoming object as a static object, monitoring theupcoming object for movement, and based on a threshold degree ofmovement of the upcoming object being detected, re-classifying theupcoming object as a moving object.

In some embodiments, the method further includes associating theupcoming object with a shoulder area of the roadway based on the lanegeometry data defining shoulder areas of the roadway.

In some embodiments, the method further includes determining a size ofthe upcoming object from the sensor data, and based on the laneassociated with the upcoming object and the current lane being a samelane, operating the autonomous vehicle with either a lane changeoperation or a lane bias operation based on the size of the upcomingobject.

In some embodiments, the method further includes tracking the upcomingobject across successive sensor data collected from the sensors atsubsequent points in time, and updating the lane associated with theupcoming object based on the tracking.

In some embodiments, the method further includes classifying theupcoming object as a vehicular object or a non-vehicular object, and theautonomous vehicle is operated further based on whether the upcomingobject is classified as a vehicular object or a non-vehicular object.

In some embodiments, the method further includes, in response toclassifying the upcoming object as a vehicular object, updating theabsolute location of the upcoming object at a pre-determined frequency.

In some embodiments, the method further includes, in response toclassifying the upcoming object as a non-vehicular object, monitoringthe upcoming object for movement, and operating the autonomous vehicleto maintain at least a minimum distance away from the upcoming object,wherein the minimum distance corresponds to movement of the upcomingobject.

In some embodiments, the lane associated with the upcoming objectincludes a shoulder area of the roadway.

In some embodiments, the method further includes determining a width ofthe upcoming object when the autonomous vehicle is a first distance awayfrom the upcoming object, and determining a length of the upcomingobject when the autonomous vehicle is a second distance away from theupcoming object. The second distance is less than the first distance,and the autonomous vehicle is operated further based on the width andthe length of the upcoming object.

In some embodiments, the method further includes tracking the upcomingobject across other sensor data collected from a different set ofsensors located on the autonomous vehicle. The different set of sensorsare configured for a different sensing modality than the sensors, andthe relative distance and the relative direction of the upcoming objectis determined further from the other sensor data.

In some embodiments, the method further includes predicting a degree ofmovement of the upcoming object, and the autonomous vehicle is operatedfurther based on the predicted degree of movement.

In some embodiments, the method further includes updating the absolutelocation of the upcoming object at a pre-determined frequency that isbased on the predicted degree of movement.

In some embodiments, the degree of movement is predicted based onwhether or not the upcoming object is a vehicle. In some embodiments, atleast a portion of the map data is provided by one or more vehicleslocated at an upcoming portion of the roadway. In some embodiments, therelative distance and the relative direction of the upcoming object isdetermined using a centroid of a LiDAR point cloud of the sensor datavia which the upcoming object is detected.

In some embodiments, the upcoming object is determined to be amotorcycle, and the autonomous vehicle is navigated according to theupcoming object being a motorcycle.

In yet another exemplary aspect, a method of operating an autonomousvehicle having a trailer coupled to a rear of the autonomous vehicle isdisclosed. The method includes continuously predicting a trailertrajectory that is distinct from a planned trajectory of the autonomousvehicle. The method further includes determining that the predictedtrailer trajectory is within a minimum avoidance distance away from astationary vehicle located on a roadway on which the autonomous vehicleis located. The method further includes modifying the planned trajectoryof the autonomous vehicle such that the predicted trailer trajectorysatisfies the minimum avoidance distance. The method further includescausing the autonomous vehicle to navigate along the modified trajectorybased on transmitting instructions to one or more subsystems of theautonomous vehicle.

In some embodiments, modifying the planned trajectory such that thepredicted trailer trajectory satisfies the minimum avoidance distanceincludes iteratively predicting the trailer trajectory using a modifiedtrajectory of the autonomous vehicle until the trailer trajectorysatisfies the minimum avoidance distance.

In some embodiments, the trailer trajectory is continuously predictedbased on sensor data collected by the controller that indicates an angleof the trailer with respect to a lengthwise axis of the autonomousvehicle. In some embodiments, the trailer trajectory is continuouslypredicted based on trailer configuration data that includes a length ofthe trailer and a relative location at which the trailer is coupled tothe rear of the autonomous vehicle. In some embodiments, the trailertrajectory is continuously predicted based on and environmentalconditions of the roadway and a weight of a trailer load. In someembodiments, the trailer trajectory is continuously predicted based on acurvature of the roadway that is indicated in map data accessible by thecontroller. In some embodiments, the trailer trajectory is continuouslypredicted based on a dynamic model of the trailer whose movement issimulated by the controller, and the dynamic model is configured withone of multiple pre-determined weights of trailer load.

In some embodiments, the method further includes determining a targetspeed of the autonomous vehicle based on the predicted trailertrajectory, and in response to the target speed being lower than acurrent speed of the autonomous vehicle, causing the autonomous vehicleto reach the target speed using engine braking. In some embodiments, themethod further includes determining a target speed of the autonomousvehicle based on the predicted trailer trajectory, and causing theautonomous vehicle to reach the target speed at an acceleration ratethat is less than a pre-determined acceleration limit.

In some embodiments, the trailer trajectory is predicted based on acurrent speed of the autonomous vehicle, and wherein a target speed isdetermined in connection with the modified trajectory to satisfy theminimum avoidance distance.

In some embodiments, the method further includes continuously predictinga vertical tipping motion of the trailer based on a current speed of theautonomous vehicle, and the planned trajectory is modified to furthersatisfy a tipping angle limit for the trailer.

In some embodiments, the method further includes determining alikelihood that the stationary vehicle will resume movement, and theminimum avoidance distance is based on the likelihood. In someembodiments, the method further includes predicting a future trajectoryof the stationary vehicle, wherein the planned trajectory of theautonomous vehicle is modified such that the predicted trailertrajectory satisfies the minimum avoidance distance with respect to thefuture trajectory. In some embodiments, the method further includesclassifying the stationary vehicle as a normal stationary vehicle or anabnormal stationary vehicle, and the minimum avoidance distance from thestationary vehicle is based on the classifying.

In some embodiments, the method further includes associating thestationary vehicle to a particular lane of the roadway, and the modifiedtrajectory is configured to cause the autonomous vehicle to travel to adifferent lane of the roadway than the particular lane. In someembodiments, the modified trajectory includes a lane change in responseto the stationary vehicle being located in a same lane as the autonomousvehicle. In some embodiments, the modified trajectory includes acomplete stop based on a failure to predict a trailer trajectory thatnavigates around the stationary vehicle while satisfying the minimumavoidance distance away from the stationary vehicle. In someembodiments, the modified trajectory includes a complete stop based onthe stationary vehicle occupying all lanes of the roadway.

In some embodiments, the modified trajectory satisfies a lane permissionparameter that is determined based on one or more motorcycles operatingon the roadway. In some embodiments, the modified trajectory avoidspenetration of an aggregate footprint area that surrounds respectivelocations of a group of motorcycles that are operating on the roadway.

In yet another exemplary aspect, a system for operating an autonomousvehicle, comprising a computer that includes a processor configured toperform the methods or operations described in this patent document.

In yet another exemplary aspect, the methods or operations described inthis patent document are embodied in a non-transitory computer readablestorage medium. The non-transitory computer readable storage mediumincludes code that when executed by a processor, causes the processor toperform the methods described in this patent document.

In another exemplary embodiment, a device that is configured or operableto perform the methods or operations described herein is disclosed. Inyet another exemplary embodiment, a system comprises a computer locatedin a vehicle, the computer comprises a processor configured to implementthe methods described herein is disclosed.

The above and other aspects and their implementations are described ingreater detail in the drawings, the descriptions, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of this disclosure, reference is nowmade to the following brief description, taken in connection with theaccompanying drawings and detailed description, where like referencenumerals represent like parts.

FIG. 1 illustrates a block diagram of an example vehicle ecosystem of anautonomous vehicle.

FIG. 2 shows a flow diagram for safe operation of an autonomous vehiclesafely in light of the health and/or surroundings of the autonomousvehicle.

FIG. 3 illustrates a system that includes one or more autonomousvehicles, a control center or oversight system with a human operator(e.g., a remote center operator (RCO)), and an interface for third-partyinteraction.

FIG. 4 shows an exemplary block diagram of a remote computer associatedwith an oversight system, a control tower, a control center, and/or thelike.

FIG. 5 shows an example flowchart of example operations for operating anautonomous vehicle responsive to a presence of motorcycles on a roadway.

FIG. 6 illustrates a diagram of an example roadway on which anautonomous vehicle detects and handles motorcycles in accordance withembodiments disclosed herein.

FIG. 7 shows an example flowchart of example operations for operating anautonomous vehicle responsive to a presence of motorcycles on a roadway.

FIG. 8 illustrates a diagram of an example roadway on which anautonomous vehicle operates using object-to-lane associations (OTLAs).

FIG. 9 shows an example flowchart of example operations for operating anautonomous vehicle based on OTLAs.

FIG. 10 shows an example flowchart of example operations for operatingan autonomous vehicle in relation to a stopped vehicle.

FIG. 11 illustrates a diagram of an example tractor-trailer behavior inrelation to a stopped vehicle.

FIGS. 12A and 12B illustrate diagrams that demonstrate tracking oftrailer trajectories.

DETAILED DESCRIPTION

Vehicles traversing highways and roadways are legally required to complywith regulations and statutes in the course of safe operation of thevehicle. For autonomous vehicles (AVs), particularly autonomous tractortrailers, the ability to recognize a malfunction in its systems and stopsafely can allow for a lawful and safe operation of the vehicle.Described below in detail are systems and methods for the safe andlawful operation of an autonomous vehicle on a roadway, including theexecution of maneuvers that bring the autonomous vehicle in compliancewith the law while signaling surrounding vehicles of its condition.

This patent document describes in Section I below an example vehicleecosystem of an autonomous vehicle and driving-related operations of theautonomous vehicle. Section II describes a control center or oversightsystem for one or more autonomous vehicles, as well as various examplefeatures thereof, and operations/processes performed thereby. SectionsIII to VII describe example operations related to particular aspects ofdriving-related operations of the autonomous vehicle. The exampleheadings for the various sections below are used to facilitate theunderstanding of the disclosed subject matter and do not limit the scopeof the claimed subject matter in any way. Accordingly, one or morefeatures of one example section can be combined with one or morefeatures of another example section.

This patent document uses many abbreviations and uncommon terms. Forinstance, “GNSS” or “GPS” may refer to satellite navigation systems;when referring to an emergency vehicle, such as a police vehicle,ambulance, fire truck, tow truck, and the like, the abbreviation “EV”may be used; the acronym “TTC” indicates “time to collision”; “NPC”refers to non-player characters and may include any other vehicle thatis not the autonomous vehicle in FIG. 1 . For example, any surroundingvehicle, motorcycle, bicycle, and the like that are manually driven orautonomously driven and that may not be in communication with theautonomous vehicle may be considered NPC; a “k-ramp” denotes a freewayon/off ramp of a particular configuration; “STV” indicates a stoppedvehicle; “ELV” may indicate an end-of-life or disabled vehicle, such asa disabled vehicle on a roadside; “OBO” may refer to an on-boardoperator or a human operator of an autonomous vehicle who temporarilytakes control to assist during inspections, start-up, and/or ending of atrip or mission for the autonomous vehicle; and “LC” may be anabbreviation for lane change.

I. Example Ecosystem of an Autonomous Vehicle

FIG. 1 shows a system 100 that includes an autonomous vehicle 105. Theautonomous vehicle 105 may include a tractor of a semi-trailer truck.The autonomous vehicle 105 includes a plurality of vehicle subsystems140 and an in-vehicle control computer 150. The plurality of vehiclesubsystems 140 includes vehicle drive subsystems 142, vehicle sensorsubsystems 144, and vehicle control subsystems 146. An engine or motor,wheels and tires, a transmission, an electrical subsystem, and a powersubsystem may be included in the vehicle drive subsystems. The engine ofthe autonomous truck may be an internal combustion engine, a fuel-cellpowered electric engine, a battery powered electrical engine, a hybridengine, or any other type of engine capable of moving the wheels onwhich the autonomous vehicle 105 moves. The autonomous vehicle 105 mayhave multiple motors or actuators to drive the wheels of the vehicle,such that the vehicle drive subsystems 142 include two or moreelectrically driven motors. The transmission may include a continuousvariable transmission or a set number of gears that translate the powercreated by the engine into a force that drives the wheels of thevehicle. The vehicle drive subsystems may include an electrical systemthat monitors and controls the distribution of electrical current tocomponents within the system, including pumps, fans, and actuators. Thepower subsystem of the vehicle drive subsystems may include componentsthat regulate the power source of the vehicle.

Vehicle sensor subsystems 144 can include sensors for general operationof the autonomous vehicle 105, including those which would indicate amalfunction in the autonomous vehicle or another cause for an autonomousvehicle to perform a limited or minimal risk condition (MRC) maneuver oran emergency driving maneuver. A driving operation module (shown as 168in FIG. 1 ) can perform an MRC maneuver by sending instructions thatcause the autonomous vehicle to steer along a trajectory to a side ofthe road and to apply brakes so that the autonomous vehicle can besafely stopped to the side of the road. The sensors for generaloperation of the autonomous vehicle may include cameras, a temperaturesensor, an inertial sensor (IMU), a global positioning system, a lightsensor, a LIDAR/LiDAR system, a radar system, and wirelesscommunications.

A sound detection array, such as a microphone or array of microphones,may be included in the vehicle sensor subsystem 144. The microphones ofthe sound detection array are configured to receive audio indications ofthe presence of, or instructions from, authorities, including sirens andcommand such as “Pull over.” These microphones are mounted, or located,on the external portion of the vehicle, specifically on the outside ofthe tractor portion of an autonomous vehicle 105. The microphones may beany suitable type, mounted such that they are effective both when theautonomous vehicle 105 is at rest, as well as when it is moving atdriving speeds.

Cameras included in the vehicle sensor subsystems 144 may be rearfacing, forward facing, and/or provide side views of the autonomousvehicle 105 so that lights from emergency vehicles may be observed fromall around the autonomous vehicle 105. These cameras may include videocameras, cameras with filters for specific wavelengths, as well as othercameras suitable to detect emergency vehicle lights based on color,flashing, or of both color and flashing.

The vehicle control subsystems 146 may be configured to controloperation of the autonomous vehicle, or truck, 105 and its components.Accordingly, the vehicle control subsystems 146 may include variouselements such as an engine power output subsystem, a brakes unit, anavigation unit, a steering system, and an autonomous control unit. Theengine power output may control the operation of the engine, includingthe torque produced or horsepower provided, as well as provide controlthe gear selection of the transmission. The brakes unit can include anycombination of mechanisms configured to decelerate the autonomousvehicle 105. The brakes unit can use friction to slow the wheels in astandard manner. The brakes unit may include an Anti-lock brake system(ABS) that can prevent the brakes from locking up when the brakes areapplied. The navigation unit may be any system configured to determine adriving path or route for the autonomous vehicle 105. The navigationunit may additionally be configured to update the driving pathdynamically while the autonomous vehicle 105 is in operation. In someembodiments, the navigation unit may be configured to incorporate datafrom the GPS device and one or more pre-determined maps so as todetermine the driving path for the autonomous vehicle 105. The steeringsystem may represent any combination of mechanisms that may be operableto adjust the heading of autonomous vehicle 105 in an autonomous mode orin a driver-controlled mode.

The autonomous control unit may represent a control system configured toidentify, evaluate, and avoid or otherwise negotiate potential obstaclesin the environment of the autonomous vehicle 105. In general, theautonomous control unit may be configured to control the autonomousvehicle 105 for operation without a driver or to provide driverassistance in controlling the autonomous vehicle 105. In someembodiments, the autonomous control unit may be configured toincorporate data from the GPS device, the RADAR, the LiDAR, the cameras,and/or other vehicle subsystems to determine the driving path ortrajectory for the autonomous vehicle 105. The autonomous control mayactivate systems of the autonomous vehicle 105, which may not be presentin a conventional vehicle, including those systems which can allow anautonomous vehicle to communicate with surrounding drivers or signalsurrounding vehicles or drivers for safe operation of the autonomousvehicle.

An in-vehicle control computer 150, which may be referred to as a VCU,includes a vehicle subsystem interface 160, a driving operation module168, one or more processors 170, a compliance module 166, a memory 175,and a network communications subsystem 177. This in-vehicle controlcomputer 150 controls many, if not all, of the operations of theautonomous vehicle 105 in response to information from the variousvehicle subsystems 140. The one or more processors 170 execute theoperations that allow the system to determine the health/status of theautonomous vehicle, such as whether the autonomous vehicle has amalfunction or has encountered a situation requiring service or adeviation from normal operation and giving instructions. Data from thevehicle sensor subsystems 144 is provided to VCU 150 so that thedetermination of the status of the autonomous vehicle can be made. Thecompliance module 166 determines what action should be taken by theautonomous vehicle 105 to operate according to the applicable (e.g.,local) regulations. Data from the vehicle sensor subsystems 144 may beprovided to the compliance module 166 so that the best course of actionin light of the autonomous vehicle's status may be appropriatelydetermined and performed. Alternatively, or additionally, the compliancemodule 166 may determine the course of action in conjunction withanother operational or control module, such as the driving operationmodule 168.

The memory 175 may contain additional instructions as well, includinginstructions to transmit data to, receive data from, interact with, orcontrol one or more of the vehicle drive subsystems 142, the vehiclesensor subsystems 144, and the vehicle control subsystems 146 includingthe autonomous Control system. The in-vehicle control computer (VCU) 150may control the function of the autonomous vehicle 105 based on inputsreceived from various vehicle subsystems (e.g., the vehicle drivesubsystems 142, the vehicle sensor subsystems 144, and the vehiclecontrol subsystems 146). Additionally, the VCU 150 may send informationto the vehicle control subsystems 146 to direct the trajectory,velocity, signaling behaviors, and the like, of the autonomous vehicle105. For example, compliance module 166 and/or the driving operationmodule 168 in the VCU 150 may send instructions to one or more devicesof the autonomous vehicle 105. The one or more devices may include oneor more devices in the vehicle drive subsystems 142, the vehicle sensorsubsystems 144, or the vehicle control subsystems 146. Theseinstructions sent by the VCU 150 to one or more devices in theautonomous vehicle 105 are configured to effectuate and result incertain operations and actions being performed by the one or moredevices in accordance with the instructions. Operations resulting fromthe instructions being sent to the one or more devices may together formdriving related operations performed by the autonomous vehicle 105. Forexample, the VCU 150 may send instructions to a motor in the steeringsystem, to an actuator in a brake unit, and/or to the engine to causeone or more devices to operate in accordance with the instructions suchthat the autonomous vehicle 105 performs a maneuver, or steers to followa trajectory at a specified (e.g., via the instructions) velocity and/oracceleration/deceleration. Thus, the instructions provided by the VCU150 can allow the autonomous vehicle 105 to follow a trajectory to steerfrom a current lane in which the autonomous vehicle 105 is operating toan adjacent lane or to a shoulder area (e.g., emergency stopping lane orarea on side of the roadway) on the roadway. The autonomous controlvehicle control subsystem may receive a course of action to be takenfrom the compliance module 166 of the VCU 150 and consequently relayinstructions to other subsystems to execute the course of action. InSections III to VII below, this patent document describes that theautonomous vehicle or a system performs certain functions or operations.These functions and/or the operations described can be performed by thecompliance module 166 and/or the driving operation module 168.

FIG. 2 shows a flow diagram for safe operation of an autonomous vehiclesafely in light of the health and/or surroundings of the autonomousvehicle. Although this figure depicts functional processes in aparticular order for purposes of illustration, the processes are notlimited to any particular order or arrangement. One skilled in therelevant art will appreciate that the various steps portrayed in thisfigure may be omitted, rearranged, combined and/or adapted in variousways.

As shown in FIG. 2 , the vehicle sensor subsystems 144 receives visual,auditory, or both visual and auditory signals indicating the at theenvironmental condition of the autonomous vehicle, as well as vehiclehealth or sensor activity data are received in operation 205. Thesevisual and/or auditory signal data are transmitted from the vehiclesensor subsystems 144 to the in-vehicle control computer system (VCU)150, as in operation 210. Any of the driving operation module and thecompliance module receive the data transmitted from the vehicle sensorsubsystems, in operation 215. Then, one or both of those modulesdetermine whether the current status of the autonomous vehicle can allowit to proceed in the usual manner or that the autonomous vehicle needsto alter its course to prevent damage or injury or to allow for servicein operation 220. The information indicating that a change to the courseof the autonomous vehicle is needed may include an indicator of sensormalfunction; an indicator of a malfunction in the engine, brakes, orother components that may be necessary for the operation of theautonomous vehicle; a determination of a visual instruction fromauthorities such as flares, cones, or signage; a determination ofauthority personnel present on the roadway; a determination of a lawenforcement vehicle on the roadway approaching the autonomous vehicle,including from which direction; and a determination of a law enforcementor first responder vehicle moving away from or on a separate roadwayfrom the autonomous vehicle. This information indicating that a changeto the autonomous vehicle's course of action or driving relatedoperation is needed may be used by the compliance module to formulate anew course of action to be taken which accounts for the autonomousvehicle's health and surroundings, in operation 225. The course ofaction to be taken may include slowing, stopping, moving into ashoulder, changing route, changing lane while staying on the samegeneral route, and the like. The course of action to be taken mayinclude initiating communications with any oversight or humaninteraction systems present on the autonomous vehicle. The course ofaction to be taken may then be transmitted from the VCU 150 to theautonomous control system, in operation 230. The vehicle controlsubsystems 146 then cause the autonomous vehicle 105 to operate inaccordance with the course of action to be taken that was received fromthe VCU 150 in operation 235.

It should be understood that the specific order or hierarchy in theprocesses disclosed herein is an example of exemplary approaches. Basedupon design preferences, it is understood that the specific order orhierarchy in the processes may be rearranged while remaining within thescope of the present disclosure. The accompanying method claims presentelements of the various processes in a sample order and are not meant tobe limited to the specific order or hierarchy presented.

II. Autonomous Truck Oversight System

FIG. 3 illustrates a system that includes one or more autonomousvehicles 105, a control center or oversight system 350 with a humanoperator 355, and an interface 362 for third-party 360 interaction. Insome examples, an autonomous vehicle 105 is a tractor to which a trailer106 is coupled or connected. In particular, the trailer 106 is coupledto a rear of the autonomous vehicle 105 such that the autonomous vehicle105 can transport the trailer 106. The combination of the tractor andthe trailer 106 can also be understood as an autonomous vehicle 302 forthe purposes of the present disclosure. Thus, the autonomous vehicle 302may refer to an autonomous vehicle that may or may not include a trailer106. In the present disclosure, references to an autonomous vehicle 302and an autonomous vehicle 105 may be interchangeable, in some examples,and in other examples, explicit reference to a trailer of an autonomousvehicle may be made.

A human operator 355 may also be known as a remoter center operator(RCO). Communications between the autonomous vehicles 302, oversightsystem 350 and user interface 362 take place over a network 370. In someinstances, where not all the autonomous vehicles 302 in a fleet are ableto communicate with the oversight system 350, the autonomous vehicles302 may communicate with each other over the network 370 or directlywith each other via an ad-hoc communication link. As described withrespect to FIG. 1 , the VCU 150 of each autonomous vehicle 302 mayinclude a network communications subsystem 177.

An autonomous truck may be in communication with an oversight system.The oversight system may serve many purposes, including: tracking theprogress of one or more autonomous vehicles (e.g., an autonomous truck);tracking the progress of a fleet of autonomous vehicles; sendingmaneuvering instructions to one or more autonomous vehicles; monitoringthe health of the autonomous vehicle(s); monitoring the status of thecargo of each autonomous vehicle in contact with the oversight system;facilitate communications between third parties (e.g., law enforcement,clients whose cargo is being carried) and each, or a specific,autonomous vehicle; allow for tracking of specific autonomous trucks incommunication with the oversight system (e.g., third-party tracking of asubset of vehicles in a fleet); arranging maintenance service for theautonomous vehicles (e.g., oil changing, fueling, maintaining the levelsof other fluids); alerting an affected autonomous vehicle of changes intraffic or weather that may adversely impact a route or delivery plan;pushing over the air updates to autonomous trucks to keep all componentsup to date; and other purposes or functions that improve the safety forthe autonomous vehicle, its cargo, and its surroundings. An oversightsystem may also determine performance parameters of an autonomousvehicle or autonomous truck, including any of: data logging frequency,compression rate, location, data type; communication prioritization; howfrequently to service the autonomous vehicle (e.g., how many milesbetween services); when to perform a minimal risk condition (MRC)maneuver while monitoring the vehicle's progress during the maneuver;when to hand over control of the autonomous vehicle to a human driver(e.g., at a destination yard); ensuring an autonomous vehicle passes apre-trip inspection; ensuring an autonomous vehicle performs or conformsto legal requirements at checkpoints and weight stations; ensuring anautonomous vehicle performs or conforms to instructions from a human atthe site of a roadblock, cross-walk, intersection, construction, oraccident; and the like.

Included in some of the functions executed by an oversight system orcommand center is the ability to relay over-the-air, real-time weatherupdates to autonomous vehicles in a monitored fleet. The over-the-airweather updates may be pushed to all autonomous vehicles in the fleet ormay be pushed only to autonomous vehicles currently on a mission todeliver a cargo. Alternatively, or additionally, priority to push ortransmit over-the-air weather reports may be given to fleet vehiclescurrently on a trajectory or route that leads towards or within apre-determined radius of a weather event.

Another function that may be encompassed by the functions executed by anoversight system or command center is the transmission of trailermetadata to the autonomous vehicle's computing unit (VCU) prior to thestart of a cargo transport mission. The trailer metadata may include thetype of cargo being transmitted, the weight of the cargo, temperaturethresholds for the cargo (e.g., trailer interior temperature should notfall below or rise above pre-determined temperatures),time-sensitivities, acceleration/deceleration sensitivities (e.g.,jerking motion may be bad because of the fragility of the cargo),trailer weight distribution along the length of the trailer, cargopacking or stacking within the trailer, and the like.

An oversight system or command center may be operated by one or morehuman, also known as an operator or a remote center operator (RCO). Theoperator may set thresholds for autonomous vehicle health parameters, sothat when an autonomous vehicle meets or exceeds a threshold, aprecautionary action may be taken. Examples of vehicle health parametersfor which thresholds may be established by an operator may include anyof: fuel levels; oil levels; miles traveled since last maintenance; lowtire-pressure detected; cleaning fluid levels; brake fluid levels;responsiveness of steering and braking subsystems; Diesel exhaust fluid(DEF) level; communication ability (e.g., lack of responsiveness);positioning sensors ability (e.g., GPS, IMU malfunction); impactdetection (e.g., vehicle collision); perception sensor ability (e.g.,camera, LIDAR, radar, microphone array malfunction); computing resourcesability (e.g., VCU or ECU malfunction or lack of responsiveness,temperature abnormalities in computing units); angle between a tractorand trailer in a towing situation (e.g., tractor-trailer, 18-wheeler, orsemi-truck); unauthorized access by a living entity (e.g., a person oran animal) to the interior of an autonomous truck; and the like. Theprecautionary action may include execution of a minimal risk condition(MRC) maneuver, seeking service, or exiting a highway or other suchre-routing that may be less taxing on the autonomous vehicle. Anautonomous vehicle whose system health data meets or exceeds a thresholdset at the oversight system or by the operator may receive instructionsthat are automatically sent from the oversight system to perform theprecautionary action.

The operator may be made aware of situations affecting one or moreautonomous vehicles in communication with or being monitored by theoversight system that the affected autonomous vehicle(s) may not beaware of. Such situations may include: irregular or sudden changes intraffic flow (e.g., traffic jam or accident); abrupt weather changes;abrupt changes in visibility; emergency conditions (e.g., fire,sink-hole, bridge failure); a power outage affecting signal lights; anunexpected road work; large or ambiguous road debris (e.g., objectunidentifiable by the autonomous vehicle); law enforcement activity onthe roadway (e.g., car chase or road clearing activity); and the like.These types of situations that may not be detectable by an autonomousvehicle may be brought to the attention of the oversight system operatorthrough traffic reports, law enforcement communications, data from othervehicles that are in communication with the oversight system, reportsfrom drivers of other vehicles in the area, and similar distributedinformation venues. An autonomous vehicle may not be able to detect suchsituations because of limitations of sensor systems or lack of access tothe information distribution means (e.g., no direct communication with aweather agency). An operator at the oversight system may push suchinformation to affected autonomous vehicles that are in communicationwith the oversight system. The affected autonomous vehicles may proceedto alter their route, trajectory, or speed in response to theinformation pushed from the oversight system. In some instances, theinformation received by the oversight system may trigger a thresholdcondition indicating that MRC (minimal risk condition) maneuvers arewarranted; alternatively, or additionally, an operator may evaluate asituation and determine that an affected autonomous vehicle shouldperform an MRC maneuver and subsequently send such instructions to theaffected vehicle. In these cases, each autonomous vehicle receivingeither information or instructions from the oversight system or theoversight system operator may use its on-board computing unit (e.g.,VCU) to determine how to safely proceed, including performing an MRCmaneuver that includes pulling-over or stopping.

Other interactions that the remote center operator (RCO) may have withan autonomous vehicle or a fleet of autonomous vehicles includes any ofthe following: pre-planned event avoidance; real-time route informationupdates; real-time route feedback; trail hookup status; first respondercommunication request handling; notification of aggressive surroundingvehicle(s); identification of construction zone changes; status of anautonomous vehicle with respect to its operational design domain (ODD),such as alerting the RCO when an autonomous vehicle is close to orenters a status out of ODD; RCO notification of when an autonomousvehicle is within a threshold distance from a toll booth and appropriateinstruction/communication with the autonomous vehicle or toll authoritymay be sent to allow the autonomous vehicle to bypass the toll; RCOnotification of when an autonomous vehicle bypasses a toll; RCOnotification of when an autonomous vehicle is within a thresholddistance from a weigh station and appropriate instruction/communicationwith the autonomous vehicle or appropriate authority may be sent toallow the autonomous vehicle to bypass the weigh station; RCOnotification of when an autonomous vehicle bypasses a weigh station;notification to the autonomous vehicle from the RCO regarding schedulingor the need for fueling or maintenance; RCO authorization of third-partyaccess to an autonomous vehicle cab; ability of an RCO to start/restartan autonomous driving system (ADS) on a vehicle; ability of anadministrator (possibly an RCO) to set roles for system users, includingground crew, law enforcement, and third parties (e.g., customers, ownersof the cargo); support from an RCO for communication with a servicemaintenance system with fleet vehicles; notification to the RCO from anautonomous vehicle of acceleration events; instruction from an RCO to anautonomous vehicle to continue its mission even when communication isinterrupted; RCO monitoring of an autonomous vehicle during and after anMRC maneuver is executed; support for continuous communication betweenan autonomous vehicle and a yard operator at a facility where theautonomous vehicle is preparing to begin a mission or where theautonomous vehicle is expected to arrive; oversight system monitoring ofsoftware systems on an autonomous vehicle and oversight system receivingalerts when software systems are compromised; and the like.

An oversight system or command center may allow a third party tointeract with the oversight system operator, with an autonomous truck,or with both the human system operator and an autonomous truck. A thirdparty may be a customer whose goods are being transported, a lawenforcement or emergency services provider, or a person assisting theautonomous truck when service is needed. In its interaction with a thirdparty, the oversight system may recognize different levels of access,such that a customer concerned about the timing or progress of ashipment may only be allowed to view status updates for an autonomoustruck, or may be able to view status and provide input regarding whatparameters to prioritize (e.g., speed, economy, maintaining originallyplanned route) to the oversight system. By providing input regardingparameter prioritization to the oversight system, a customer caninfluence the route and/or operating parameters of the autonomous truck.

Actions that an autonomous vehicle, particularly an autonomous truck, asdescribed herein may be configured to execute to safely traverse acourse while abiding by the applicable rules, laws, and regulations mayinclude those actions successfully accomplished by an autonomous truckdriven by a human. These actions, or maneuvers, may be described asfeatures of the truck, in that these actions may be executableprogramming stored on the VCU 150 (the in-vehicle control computerunit). For example, the VCU 150 performs operations including thoserelated to reactions to the detection of certain types of conditions orobjects such as: appropriate motion on hills; appropriate motion oncurved roads, appropriate motion at highway exits; appropriate motion oraction in response to: detecting one or more stopped vehicle, detectingone or more vehicles in an emergency lane; detecting an emergencyvehicle with flashing lights that may be approaching the autonomousvehicle; motion in response to detecting one or more large vehiclesapproaching, adjacent to, or soon, to be adjacent to the autonomousvehicle; motions or actions in response to pedestrians, bicyclists, andthe like after identification and classification of such actors (e.g.,by the VCU 150); motions or actions in response to curved or bankedportions of the roadway; and/or motions in response to identifying onand off ramps on highways or freeways, encountering an intersection;execution of a merge into traffic in an adjacent lane or area oftraffic; detection of a need to clean one or more sensors and thecleaning of the appropriate sensor(s); identification of lawenforcement/emergency vehicles and personnel and compliance withassociated instructions or regulations; execution of minimal riskcondition maneuvers when needed; and identification of road debris orunknown objects; and the like. Other features of an autonomous truck mayinclude those actions or features which are needed for any type ofmaneuvering, including that needed to accomplish the features or actionsthat are reactionary, listed above.

Supporting features may include: changing lanes safely; operating turnsignals on the autonomous truck to alert other drivers of intendedchanges in motion; biasing the autonomous truck in its lane (e.g.,moving away from the center of the lane to accommodate the motions orsizes of neighboring vehicles or close objects); ability to maintain anappropriate following distance; the ability to turn right and left withappropriate signaling and motion, and the like. Supporting features mayalso include: the ability to navigate roundabouts; the ability toproperly illuminate with on-vehicle lights as-needed for ambient lightand for compliance with local laws; apply the minimum amount ofdeceleration needed for any given action; determine location at alltimes; adapting dynamic vehicle control for trailer load distributions,excluding wheel adjustment; launching (reaching target speed),accelerating, stopping, and yielding; operate on roadways with bumps andpotholes; enter a minimal risk condition (MRC) on roadway shoulders;access local laws and regulations based on location along a route;operate on asphalt, concrete, mixed grading, scraped road, and gravel;ability to operate in response to metering lights/signals at on-ramps;operate on a roadway with a width up to a pre-determined width; able tostop at crosswalks with sufficient stopping distance; navigate two-wayleft turn lanes; operate on roadways with entry and exit ramps; utilizethe vehicle horn to communicate with other drivers; and the like. One ormore features and/or one or more supporting features described in thispatent document may combined and can be performed by the in-vehiclecontrol computer in an autonomous truck.

In some embodiments, the actions or features may be consideredsupporting features and may include: speed control; the ability tomaintain a straight path; and the like. These supporting features, aswell as the reactionary features listed above, may include controllingor altering the steering, engine power output, brakes, or other vehiclecontrol subsystems 146. The reactionary features and supporting featureslisted above are discussed in greater detail below.

As described above, an autonomous vehicle may be in communication withan oversight system which may serve various purposes related to theoperation of the autonomous vehicle, such as but not limited tomonitoring and/or triggering MRC fault conditions.

FIG. 4 shows an exemplary block diagram of a remote computer 400associated with an oversight system. The oversight system (shown as 350in FIG. 3 ) may include the remote computer 400 which can be located ata location outside of an autonomous vehicle. In this patent document,the descriptions related to operations performed by the oversight systemcan be performed by the oversight module (shown as 425 in FIG. 4 ) inthe remote computer 400. The remote computer 400 includes at least oneprocessor 410 and a memory 405 having instructions stored thereupon. Theinstructions, upon execution by the processor 410, configure the remotecomputer 400 to perform the operations related to the oversight module425, where the oversight module 425 can perform operations related tothe oversight system as described at least in FIGS. 1 to 3 and in thevarious embodiments described in this patent document. A remote computer400 may include one or more servers. The transmitter 415 transmits orsends information or data to one or more autonomous vehicles, and thereceiver 420 receives information or data from one or more autonomousvehicles. According to various embodiments, the information or datatransmitted to and received from one or more autonomous vehicles mayinclude communications, operations, processes, and the like describedherein.

It will be understood that, in some embodiments, the remote computer 400may be a cloud computing platform or a multi-processor platform. Forexample, the processor 410 includes a plurality of processors. As such,in some embodiments, the remote computer 400 includes a plurality ofcomputing devices that may be located at different locations and thatcooperate to perform functionalities associated with the remote computer400.

III. Detection and Handling for Motorcycles

An autonomous vehicle may encounter motorcycles that operate on aroadway on which the autonomous vehicle is located. Motorcycles arecharacterized by a narrower width compared to other vehicles, whichresults in motorcycles being operated in a different manner than othervehicles. For example, in some jurisdictions or regions, such asCalifornia, motorcycles are permitted to lane split (also known as lanestraddling or other terms). Lane splitting may generally refer to amotorcycle or similar vehicle (e.g., a bicycle, a scooter) to travelbetween lanes of a roadway, for example, tracing along a lane boundary.In some examples, motorcycles travel together in groups or convoys. Toprovide safe operation of an autonomous vehicle, the autonomous vehicleneeds to detect and appropriately handle motorcycles and all thebehaviors thereof.

III.(a) Motorcycle Definition

An autonomous vehicle may define motorcycle as a motor vehicle withmotive power having a seat or saddle for the use of the rider anddesigned to travel on not more than three wheels with the wheel rimdiameter of at least 10 inches in contact with ground.

Motorcycles include motor scooters, mopeds, motor-powered bicycles, andthree-wheel motorcycles.

An autonomous vehicle may categorize motorcycles in different groups as2-wheel motorcycles and 3-wheel motorcycles, since this affects themaneuver capabilities.

III.(b) Group of Motorcycles Definition

An autonomous vehicle may define a group of motorcycles as three or moremotorcycles driving in the same lane; if they are no more than apredetermined distance away from each other (e.g., at most 30 m, at most40 m, at most 50 m, at most 60 m, at most 70 m) and there are no othertypes of vehicles in between. For example, lines-of-sight betweenmotorcycles are determined, and intersection or obstructions of suchlines-of-sight by other vehicles are detected. In some examples, anautonomous vehicle defines a group of motorcycles as three or moremotorcycles no more than a predetermined distance away from each otherand traveling at approximately the same speed.

III.(c) Motorcycle Lane Straddling Definition

An autonomous vehicle may define lane straddling as a motorcycle drivingwithin a predetermined number of feet (e.g., 2 feet, 3 feet, 4 feet, 5feet) of a marked line (center of motorcycle to center of lane marker)as opposed to driving in between two marked lines.

III.(d) Motorcycle Detection

An autonomous vehicle may detect the motorcycle(s) and associatedlane(s) from at least a predetermined number of meters away (e.g., 100 maway, 150 m away, 200 m away).

An autonomous vehicle may detect the motorcycles in its current lane andadjacent lanes.

An autonomous vehicle may detect motorcycles in all other lanes from atleast a predetermined number of meters away (e.g., 75 m away, 100 maway, 150 m away, 200 m away).

An autonomous vehicle may detect different categories of motorcycles;2-wheel motorcycles and 3-wheel motorcycles, since this affects themaneuver capabilities.

An autonomous vehicle may detect (and predict) maneuvers and suddenmovements of motorcycles in all lanes from at least a predeterminednumber of meters away (e.g., 25 m away, 35 m away, 50 m away, 60 m away,70 m away).

An autonomous vehicle may be able to handle the micro-Doppler effect ofwheels to avoid wrong detection of motorcycle speed, regarding LiDARand/or radar detection for speed estimation). In some embodiments, anautonomous vehicle detects a motorcycle captured by a LiDAR point cloudand filters certain points out from the point cloud that are associatedwith the micro-Doppler effect of the wheels. In some embodiments, anautonomous vehicle detects a motorcycle based on a radar signal andfilters the radar signal to remove noise associated with themicro-Doppler effect of the wheels.

In some embodiments, detection of a motorcycle is followed by theautonomous vehicle tracking (e.g., continuously, periodically) thedetected motorcycle for a length of time, for example, the length oftime that the detected motorcycle is within a pre-determined distanceaway from the autonomous vehicle. In some embodiments, tracking thedetected motorcycle includes identifying the detected motorcycle insensor data collected after the initial detection and updating relativedistances and directions between the motorcycle and the autonomousvehicle using the sensor data. For example, a motorcycle is tracked inimage data or video data.

III.(e) Group of Motorcycles Detection

An autonomous vehicle may detect a group of motorcycles and theassociated lane from at least a predetermined number of meters away(e.g., 100 m away, 125 m away, 150 m away, 175 m away).

In some embodiments, detection of a group of motorcycles includingdetermining a bounding box for each motorcycle and an aggregatefootprint area or an aggregate bounding box for the group ofmotorcycles. As the motorcycles continue to operate, motorcycles can beadded to or removed from the group of motorcycles. That is, a group ofmotorcycles is dynamically defined, and the aggregate footprint area orbounding box is dynamically defined.

III. (f) Motorcycle Lane Straddling Detection

An autonomous vehicle may detect motorcycles that do lane straddlingfrom at least a predetermined number of meters away (e.g., 100 m away,125 m away, 150 m away, 175 m away) in the autonomous vehicle's currentlane and adjacent lanes.

Straddling in a lane includes straddling on both lane markings sides ofthe lane.

III.(g) Motorcycle Planning

An autonomous vehicle may maintain a safe distance of at least apredetermined number of meters away (e.g., 100 m away, 125 m away, 150 maway, 175 m away) from a motorcycle while following it as the targetvehicle.

An autonomous vehicle may avoid merging into the lane of a motorcyclewithin a predetermined number of meters (e.g., 100 m, 125 m, 150 m, 175m) of it.

An autonomous vehicle may avoid sharing a lane with motorcycles. In somejurisdictions or regions (e.g., California), motorcycles are permittedto share a lane with other vehicles. As such, an autonomous vehicle mayshare a lane with motorcycles depending on the jurisdiction or regionwithin which the autonomous vehicle is located. In some embodiments, anautonomous vehicle biases away from a motorcycle with which theautonomous vehicle shares a lane.

Motorcycles typically can stop faster and accelerate faster than regularvehicles.

III.(h) Passing a Motorcycle

An autonomous vehicle may pass a motorcycle only when it is safe to doso.

An autonomous vehicle may avoid passing a motorcycle in the curves ofmore than a predetermined number of degrees (e.g., 15 degrees, 20degrees, 25 degrees) on arbitrary roads.

An autonomous vehicle may only pass a lane splitting motorcycle from atleast a lane over.

III. (i) Group of Motorcycles Classification

An autonomous vehicle may consider each motorcycle in a group ofmotorcycles as an individual motorcycle and follow the samerequirements. In some examples, a motorcycle is grouped with othervehicles. For example, a group or convoy can include one or moremotorcycles as well as one or more cars, trucks, and/or the like. Forease of description herein, such examples of groups are included whenreferring to a group of motorcycles.

An autonomous vehicle may avoid merging between the group of motorcyclesand into their lanes. With definition of an aggregate footprint area orbounding box that represents the motorcycle group, the autonomousvehicle can avoid being located between individual motorcycles of thegroup. The aggregate footprint area or bounding box can be treated as abounding box of an object with which the autonomous vehicle avoidscollision or penetration, such as by maintaining a distance away fromthe aggregate area or box.

III.(j) Motorcycle Lane Straddling Behavior

An autonomous vehicle may interact with lane straddling motorcycle(s)autonomously and safely. Interactions with a lane straddling motorcycleare based upon a jurisdiction or region within which an autonomousvehicle is located. For example, California is an example jurisdictionin which motorcycle lane straddling is permitted, and an autonomousvehicle lane biases near a lane straddling motorcycle within changinglanes. In some examples in which the autonomous vehicle is located in aregion that prohibits lane straddling, an autonomous vehicle may changelanes to a furthest lane from the lane straddling motorcycle to maximizeavoidance of the illegal and unpredictable activity.

An autonomous vehicle may avoid blocking a lane straddling motorcycle(s)from passing it if it's possible and safe to do so.

An autonomous vehicle may avoid passing a motorcycle that is straddlinga lane.

An autonomous vehicle may move to the left (right) of their lane to givemotorcyclists ample room to pass if the autonomous vehicle is in the farleft (right) lane. The autonomous vehicle may do so before themotorcycle reaches a pre-determined distance away from the autonomousvehicle.

Thus, generally, an autonomous vehicle determines a lane permissionparameter (e.g., a lane change intention or a lane change denier) basedon detection of a lane straddling motorcycle, and the autonomous vehicleoperates in accordance with the lane permission parameter (e.g., bystaying in the current lane, by changing lanes, by biasing within alane).

FIG. 5 illustrates a flowchart of example operations performed inrelation to a presence of one or more motorcycles on a roadway with anautonomous vehicle. In some embodiments, the operations are performed bythe autonomous vehicle (e.g., an autonomous controller of the autonomousvehicle). In some embodiments, at least some of the operations may beperformed by an oversight system or a remote computer, therebyconserving processing and computing effort at the autonomous vehicle.

At operation 502, the autonomous vehicle detects that a motorcycle isoperating on a roadway on which an autonomous vehicle is located. Theautonomous vehicle may detect the motorcycle using at least one of LiDARdevices, cameras, or radar devices. LiDAR data (e.g., a point cloud) maybe filtered to remove a subset of the point cloud that is attributed toa micro-Doppler effect of wheels of the motorcycle. Upon detection ofthe motorcycle, the autonomous vehicle tracks the motorcycle insuccessive sensor data.

At operation 504, the autonomous vehicle classifies a behavior state ofthe motorcycle based on a location of the motorcycle relative to a splitzone. The split zone is located between and extending into two adjacentlanes. For example, the autonomous vehicle classifies the motorcycle aslane splitting (e.g., a lane splitting behavior state) based on thelocation of the motorcycle being within the split zone. Alternatively,the autonomous vehicle classifies the motorcycle as not lane splitting(e.g., a normal behavior state, a non-splitting behavior state) based onthe location of the motorcycle being outside of the split zone.

Referring to FIG. 6 , example split zones 602 of a roadway areillustrated. The roadway includes four lanes 604, and three split zones602 are defined between the four lanes 604. In other examples, splitzones are also defined between a lateral-most lane of a roadway and ashoulder area of a roadway (not explicitly illustrated). In someexamples, a split zone 602 extends into a lane 604 by a distance or awidth that leaves at least a width of the autonomous vehicle 302. Insome examples, a split zone 602 extends into a lane 604 by less thanhalf of a width of the lane 604. Thus, a split zone 602 may be definedwith a width that is based on respective widths of the lanes 604 that itis defined between. In some examples, a split zone 602 is dynamicallydefined based on environmental conditions, road curvature, lane width,roadway material, and/or the like. For example, a split zone is definedwith a wider width in rainy conditions to restrict the autonomousvehicle from sharing a lane with a motorcycle located in the split zone.

Returning to FIG. 5 , at operation 506, the autonomous vehicledetermines a lane permission parameter that controls whether a giventrajectory for the autonomous vehicle is permitted to extend into thetwo adjacent lanes. In some embodiments, a lane permission parameter isspecific to a given lane, and lane permission parameters are determinedfor the two adjacent lanes. In some embodiments, the lane permissionparameter is a lane change intention or a lane change denier. The lanechange intention permits the autonomous vehicle to change lanes, whilethe lane change denier restricts the autonomous vehicle from changinglanes. For example, the lane change intention and the lane change deniermay be embodied by persistent commands, flags, controls, and/or the likeindicated to (logically) downstream controllers of the autonomousvehicle or to a human operator of the autonomous vehicle.

In some examples, the lane permission parameter is determined based onwhether the jurisdiction or region in which the autonomous vehicle islocated permits motorcycle lane splitting or not. In some examples, thelane permission parameter is determined further based on a number ofwheels of the motorcycle (e.g., three-wheel motorcycles are wider thantwo-wheel motorcycles and may not lane split as effectively).

At operation 508, the autonomous vehicle (e.g., the autonomouscontroller or system) causes the autonomous vehicle to operate inaccordance with a trajectory that satisfies the lane permissionparameter. In particular, the autonomous controller or system transmitsinstructions to one or more subsystems of the autonomous vehicle tooperate (e.g., maneuver) the autonomous vehicle. As an illustrativeexample, the autonomous vehicle performs lane biasing away from thesplit zone and the motorcycle based on a lane permission parameterindicating that the autonomous vehicle is permitted to remain in one ofthe adjacent lanes. As another illustrative example, the autonomousvehicle moves from a current lane to a different lane before theautonomous vehicle is within a predetermined distance from themotorcycle, if the lane permission parameter restricts the autonomousvehicle from being within the two adjacent lanes.

In some embodiments, the autonomous vehicle indicates to a human and/orremote operator that a motorcycle is classified as lane splitting if theautonomous vehicle is located in a jurisdiction that does not permitlane splitting.

In some embodiments, the autonomous vehicle detects multiple othermotorcycles with the motorcycle and performs operations related tohandling groups of motorcycles.

FIG. 7 illustrates a flowchart of example operations performed inrelation to a presence of one or more motorcycles on a roadway with anautonomous vehicle. In some embodiments, the operations are performed bythe autonomous vehicle (e.g., an autonomous controller of the autonomousvehicle). In some embodiments, at least some of the operations may beperformed by an oversight system or a remote computer, therebyconserving processing and computing effort at the autonomous vehicle.

At operation 702, the autonomous vehicle detects that a group ofmotorcycles is operating on a roadway on which the autonomous vehicle islocated, the group of motorcycles being each located within apre-determined distance away from one another.

At operation 704, the autonomous vehicle determines an aggregatefootprint area that surrounds respective locations of the group ofmotorcycles.

At operation 706, the autonomous vehicle avoids penetration of theaggregate footprint area. For example, an autonomous controller on-boardthe autonomous vehicle causes navigation of the autonomous vehicle thatavoids penetration of the aggregate footprint area based on transmittingnavigation instructions to one or more subsystems (e.g., a steeringsubsystem, an engine subsystem, a power subsystem) of the autonomousvehicle. For example, a trajectory is determined for the autonomousvehicle that maintains a minimum lateral distance away from theaggregate footprint area. Further, the trajectory is determined to notintersect lines-of-sight between individual motorcycles of the group.Trajectories and lines-of-sight of the individual motorcycles may bepredicted, such that the trajectory is determined to avoid intersectingor obstructing lines-of-sight between motorcycles at future points intime.

In some embodiments, the autonomous vehicle dynamically redefines thegroup and updates the aggregate footprint area based on trackingbehavior of the motorcycles. For example, if an individual motorcycleleaves the group (e.g., is located farther than the pre-determineddistance away from the others), then the individual motorcycle is nolonger considered to be a part of the group, and the aggregate footprintarea is re-defined accordingly. As another example, if an individualmotorcycle joins the group, then the aggregate footprint area isre-defined to include the new motorcycle accordingly.

In some embodiments, the autonomous vehicle determines a lane permissionparameter based on whether any individual motorcycles of the group arelane splitting.

IV. Object Perception

Detection and anticipation of upcoming objects is necessary to allowpreemptive handling and maneuvering of autonomous vehicles. Objects aretypically detected using sensors located on an autonomous vehicle, andthus, objects are perceived from a perspective or point-of-view of theautonomous vehicle. While objects are perceived relative to theautonomous vehicle, some maneuverings of the autonomous vehicle aredefined with respect to lane-level topology of a roadway. A mapping ofupcoming objects with respect to roadway-specific lane topology isnecessary to determine appropriate lane-level maneuvering of anautonomous vehicle in a safe and early manner.

For example, FIG. 8 illustrates a diagram of an autonomous vehicle 302perceiving (e.g., sensing, detecting) objects 802A and 802B. By natureof the autonomous vehicle 302 perceiving the object 802A using sensorslocated on the autonomous vehicle 302, the object 802A appearspositioned off of a straight path of the autonomous vehicle 302 (e.g.,in an “11 o'clock” direction). However, in the illustrated example, theobject 802A is located within the same lane 804 of the autonomousvehicle 302, due to a curvature of the roadway.

A similar challenge is shown with object 802B, which is detectedstraight ahead of the autonomous vehicle 302. In the illustratedexample, object 802B is actually located in a different lane than theautonomous vehicle 302, and significant avoidance maneuvers may not benecessary if the autonomous vehicle is aware that the object 802 islocated in a different lane.

Thus, association of detected objects with lanes of a roadway enablesearlier and safer maneuvering of the autonomous vehicle 302.Object-to-lane association provides valuable context to detection ofobjects. Detection of objects located far off in the distance is moreactionable given lane and roadway context of the objects.

IV.(a) Object Perception

An autonomous vehicle may detect and analyze objects attributes withinthe field-of-view of the sensors of the autonomous vehicle.

An autonomous vehicle may associate an object to the lane or shoulder ofthe road that it is located at. (OTLA: Object To Lane Association)

An autonomous vehicle may classify objects as static or moving.

An autonomous vehicle may have the capability to reclassify objects, astheir behavior changes.

IV.(b) Static Objects

An autonomous vehicle may detect static objects and analyze attributesof static objects within the sensor field-of-view of the autonomousvehicle and within road boundaries.

An autonomous vehicle may detect static objects with a predeterminedminimum height (e.g., 2 inches, 3 inches, 4 inches, 5 inches).

An autonomous vehicle may detect all static objects that impact itscapabilities (e.g., perception, localization, behavior, and drivingcapabilities.)

An autonomous vehicle may have the capability to detect and analyzeattributes of static objects, including: size (e.g., dimensions),mobility (e.g., expectation of movement), classification (e.g., stoppedvehicle, road signs, traffic lights, guardrails or barriers, bridges,etc.).

An autonomous vehicle may detect static objects from a predeterminedminimum distance depending on, and relative to, its dimensions.

IV.(c) Moving/Moveable Objects

An autonomous vehicle may detect moving objects and analyze attributesof moving objects within the sensor field-of-view of the autonomousvehicle and within road boundaries.

An autonomous vehicle may have the capability to detect and analyzeattributes of moving objects, including the size or dimensions of themoving objects. An autonomous vehicle may detect width and height of amoving object from at least a first predetermined number of meters andlength of it from at least a second predetermined number of meters away.In some embodiments, the length of an object (e.g., along a direction oftravel of the autonomous vehicle, parallel with a sensingdirection/beam) is estimated based on movement of the object and basedon a two-dimensional bounding box for the object. The two-dimensionalbounding box may be based on the detected width and height. Thus, widthand height are determined first to enable generation of a bounding boxfrom which length of the object can be estimated.

An autonomous vehicle may also detect and analyze other attributes ofmoving objects, including speed and heading (e.g., velocity),acceleration, position (relative to the autonomous vehicle), andassociated lane (or shoulder of the road).

FIG. 9 illustrates a flowchart of example operations related toperception and localization of objects. In some embodiments, theoperations are performed by the autonomous vehicle (e.g., an autonomouscontroller of the autonomous vehicle).

At operation 902, the autonomous vehicle detects, via sensor datacollected from sensors located on the autonomous vehicle, an upcomingobject located on a roadway on which the autonomous vehicle is located.

At operation 904, the autonomous vehicle determines, from the sensordata, a relative distance and a relative direction of the upcomingobject with respect to the autonomous vehicle. In some embodiments, therelative distance and the relative direction are determined using acentroid of a LiDAR point cloud of the sensor data via which theupcoming object is detected.

At operation 906, the autonomous vehicle maps the upcoming object to anabsolute location with respect to the roadway based on (i) map data thatdescribes upcoming topology of the roadway and (ii) a location of theautonomous vehicle within the roadway.

At operation 908, the autonomous vehicle associates the upcoming objectwith a lane of the roadway based on the absolute location mapped to theupcoming object and lane geometry data for the roadway.

At operation 910, the autonomous vehicle (e.g., an autonomous controlleror system) operates the autonomous vehicle based on a relationshipbetween the lane associated with the upcoming object and a current lanein which the autonomous vehicle is located.

In some embodiments, the autonomous vehicle further tracks changes tothe absolute location of the upcoming object for at least a length oftime that the autonomous vehicle is approaching the upcoming object andupdates the lane associated with the upcoming object based on thetracked changes. In some embodiments, the autonomous vehicle tracks theupcoming object across other sensor data collected from a different setof sensors located on the autonomous vehicle. The different set ofsensors are configured for a different sensing modality than thesensors, and the relative distance and the relative direction of theupcoming object are determined further from the other sensor data.

In some embodiments, the autonomous vehicle further classifies theupcoming object as a static object or a moving object, and theautonomous vehicle operates further based on whether the upcoming objectis classified as a static object or a moving object. In response toclassifying the upcoming object as a moving object, the autonomousvehicle updates the absolute location of the upcoming object at apre-determined frequency. In response to classifying the upcoming objectas a static object, the autonomous vehicle monitors the upcoming objectfor movement and re-classifies the upcoming object as a moving objectbased on a threshold degree of movement of the upcoming object beingdetected.

In some embodiments, the autonomous vehicle further classifies theupcoming object as a vehicular object or a non-vehicular object, and theautonomous vehicle operates further based on whether the upcoming objectis classified as a vehicular object or a non-vehicular object. Inresponse to classifying the upcoming object as a vehicular object, theautonomous vehicle updates the absolute location of the upcoming objectat a pre-determined frequency. In response to classifying the upcomingobject as a non-vehicular object, the autonomous vehicle updates theupcoming object for movement and maintains at least a minimum distanceaway from the upcoming object corresponding to movement of the upcomingobject.

In some embodiments, the autonomous vehicle predicts a degree ofmovement of the upcoming object, and the autonomous vehicle operatesfurther based on the predicted degree of movement. The autonomousvehicle updates the absolute location of the upcoming object at apre-determined frequency that is based on the predicted degree ofmovement. The degree of movement is predicted based on whether or notthe upcoming object is a vehicle.

In some embodiments, the autonomous vehicle associates the upcomingobject with a shoulder area of the roadway based on the lane geometrydata defining shoulder areas of the roadway. In some embodiments, thelane associated with the upcoming object includes a shoulder area of theroadway. In some embodiments, at least a portion of the map data isprovided by one or more vehicles that traveled through or are located atan upcoming portion of the roadway.

In some embodiments, the autonomous vehicle determines a size of theupcoming object from the sensor data and executes either a lane changeor a lane bias based on the size of the upcoming object if the upcomingobject is in the same lane as the autonomous vehicle. In someembodiments, the autonomous vehicle determines a width of the upcomingobject when the autonomous vehicle is a first distance away from theupcoming object and determines a length of the upcoming object when theautonomous vehicle is a second distance away from the upcoming object.The second distance is less than the first distance, and the autonomousvehicle is operated further based on the width and the length of theupcoming object.

In some embodiments, the upcoming object is determined to be amotorcycle, and the autonomous vehicle is operated according to variousembodiments described herein relating to motorcycle operations.

V. Speed Control

According to various embodiments, an autonomous vehicle may be operatedaccording to determined speeds to ensure safe and compliant operation ofthe autonomous vehicle. In some embodiments, speeds for the autonomousvehicle may be determined based on roadway conditions, roadwaycharacteristics, and regulations controlling a roadway on which theautonomous vehicle is operating. In some examples, speeds for theautonomous vehicle, along with other trajectory-related information, maybe determined based on regulation and other roadway informationindicated by road signs located along the roadway that are detected bythe autonomous vehicle. For example, the autonomous vehicle may detectvarious road signs as the autonomous vehicle travels along a roadwayusing various sensors including cameras, LiDAR sensors, radar devices,or the like.

V.(a) Speed Control—Obey Speed Limits

At all times, an autonomous vehicle may drive at or below the postedspeed limit. In some embodiments, a speed of the autonomous vehicle maybe determined to satisfy or comply with the posted speed limit if thespeed is at or below the posted speed limit. In some embodiments, aspeed of the autonomous vehicle may be determined to satisfy or complywith the posted speed limit if the speed is below the posted speed limitwithin a predetermined threshold (e.g., 5 miles per hour under theposted speed limit, 10 miles per hour under the posted speed limit, 20miles per hour under the posted speed limit). In some embodiments, aspeed of the autonomous vehicle may be determined to satisfy or complywith the posted speed limit if the speed is within a predeterminedthreshold above or below the posted speed limit (e.g., 5 miles per hourabove or below the posted speed limit, 10 miles per hour above or belowthe posted speed limit, 15 miles per hour above or below the postedspeed limit). In some implementations, the amount that the autonomousvehicle may operate above or below the posted speed limit may beincluded in map data used for navigation and operation of the autonomousvehicle (e.g., by an autonomous driving system on the autonomousvehicle, by an oversight system or remote computer controlling theautonomous vehicle). In some embodiments, the amount above or below theposted speed limit may be configurable based on local weather events,road conditions and topology, historical data describing speeds at whichvehicles have been historically flagged for violation of the postedspeed limit, or the like.

V.(b) Speed Control—Obey Speed Limits—Ramps

When merging on or off a highway, an autonomous vehicle may operate at aspeed that satisfies any speed limits posted at the on-ramp or off-rampon which the autonomous vehicle is operating. In some embodiments, theautonomous vehicle may detect a road sign and determine, based oninformation indicated by the road sign, whether the road sign indicatesa speed limit specific to an on-ramp or an off-ramp (e.g., as opposed tolanes of the highway).

V.(c) Speed Control—Obey Speed Limits—Nighttime Speed

When driving after the sun has set, an autonomous vehicle may obey anynighttime specific speed limits. In some embodiments, nighttime specificspeed limits may be indicated in map data that is provided to theautonomous vehicle and may be associated with a range of times. In someembodiments, nighttime specific speed limits are indicated by road signspresent in the environment exterior to the autonomous vehicle, and theautonomous vehicle determines the nighttime specific speed limits for aroadway on which the autonomous vehicle is operating based on detectingthe road signs. In some implementations, nighttime speed limits may beincluded in map data used for navigation and operation of the autonomousvehicle (e.g., by an autonomous driving system on the autonomousvehicle, by an oversight system or remote computer controlling theautonomous vehicle).

V.(d) Speed Control—Obey Contract Speed Limit

At all times, an autonomous vehicle may drive at or below any contractspeed limits that are in place.

A contract speed limit is a limit that is set on the autonomous vehiclesystem's maximum speed, typically dictated by the terms of a contractwith a partner or agreed upon by a set of stakeholders. For example, apartner or stakeholder that may be a company or entity that isassociated with ownership of cargo being transported by the autonomousvehicle may indicate a contract speed limit based on the cargo.

V.(e) Speed Adjustments for Control of Autonomous Vehicle

An autonomous vehicle may maintain the posted speed limit (or less) witha reduction from the current speed as needed for control. For example,when the autonomous driving system determines that the weather or roadconditions do not permit the autonomous vehicle to operate at the postedspeed limit because the autonomous vehicle would be in danger of losingcontrol or not having a sufficient distance between it and a NPC vehicle(e.g., a surrounding vehicle, including a manually operated vehicle oranother autonomous vehicle that is not in direct communication with theautonomous vehicle) ahead, then the current speed of the autonomousvehicle may be reduced from the posted speed limit. The conditions whichmay warrant speed adjustments may be confirmed or justified by anoversight system, including by a remote control operator associated withan oversight system. Additionally, or alternatively, other autonomousvehicles along the same route or in adjacent locations may provideinformation which informs the determination that speed adjustment iswarranted.

V.(f) Map—Speed Limit Information

Map data used with autonomous operation of the autonomous vehicle mayinclude speed limit information for all mapped routes. In particular, agiven length of roadway defined in the map data may be associated withone or more speed limit values that are applicable to vehicles locatedwithin the given length of roadway.

V.(g) Oversight—Update Speed Limits

Upon detecting a speed limit sign that indicates a different speed limitvalue than that included in map data, an autonomous vehicle maycommunicate the different speed limit value to an oversight system orremote computer. The autonomous vehicle may additionally communicate alocation of the speed limit sign and/or the like autonomous vehicle tothe oversight system. The oversight system may communicate the differentspeed limit value to one or more other autonomous vehicles, for example,in a map update.

In some embodiments, the map used by the autonomous vehicle may bestored locally at the autonomous vehicle. In some embodiments, theautonomous vehicle causes update of the map based on new speed limitsign encounters or speed limit discrepancies when the map is remotelystored (e.g., at an oversight system). For example, the autonomousvehicle transmits an indication of a new speed limit, an updated speedlimit, or a speed limit discrepant with the map information to a remotecomputer of the oversight system. In some instances, updates to mapinformation, including changes to the speed limit, may be provided byanother autonomous vehicle that is in communication with the autonomousvehicle. Other autonomous vehicles, such as autonomous vehicles in afleet, may communicate directly (e.g., V2V) or via an oversight system(e.g., V2C2V) or through another structure or means (e.g., data storagepoints, V2X2V).

V.(h) Detect all Speed Limit Signs

An autonomous vehicle may be able to detect and classify all speed limitsigns, including signs on local roads, highways, construction zones, andentry and exit ramps. This detection and classification may be done bythe autonomous vehicle using data acquired by the suite of sensorsaboard the autonomous vehicle, as well as computing modules on theautonomous vehicles configured to identify speed limit signs based onany of: sign color, overall sign shape, and the reading of icons orwords on the sign. Alternatively, or additionally, a map or map databasemay have areas of changing speed limit identified, or areas ofconstruction or other types of temporary speed limit changes identified,and the autonomous driving system may be more alert in those areas toevaluate signs for speed limit postings.

V.(i) Speed Control—Speed Limit Timing

An autonomous vehicle may operate at a speed that is at or below a givenspeed limit by the time the frontmost point of the autonomous vehiclereaches the speed limit sign that indicates the given speed limit. Assuch, a deceleration rate for the autonomous vehicle to reach a speedbelow a speed limit indicated by a sign detected at a distance away fromthe vehicle may be based on the distance at which the sign is detected.

V.(j) Speed Limit Sign Road Association

An autonomous vehicle may associate speed limit signs to the correctroad structure. For example, a speed limit sign that is on an off-ramp,but still visible from the highway, may be associated with the ramp andnot the highway. Thus, in detection of a speed limit sign, theautonomous vehicle identifies relative distances between the speed limitsign and nearby road structures and associates the speed limit sign witha given road structure based on the relative distances.

In some examples, a road sign associated with an on-ramp or an off-rampmay include text such as RAMP, EXIT, or the like, and the autonomousvehicle may detect and interpret text on a road sign. In other examples,a road sign may include directional indicators (e.g., arrows) indicatinga particular road segment or structure to which the road signcorresponds. In other examples, the autonomous vehicle may identify thecorresponding road segment for a road sign based on a location of theroad sign. For example, the road sign may be located between a mainsegment of the roadway and an off-ramp, and based on the road sign beinglocated closer to the ramp than to the main segment of the roadway, theautonomous vehicle may identify the ramp as being associated with theroad sign. As another example, the road sign may be located on a side ofa ramp opposite of a main segment of the roadway (thus being far removedfrom the main segment of the roadway), and the autonomous vehicle mayidentify the off-ramp as being associated with the road sign.

V.(k) Engine Braking for Efficiency Lane Changes

An autonomous vehicle may prefer to use engine braking when slowing aspart of seeking a gap to lane change into for efficiency lane changeintentions or intentions of lower priority.

V.(l) Engine Braking for Following Distance

An autonomous vehicle may prefer to use engine braking when growing ormaintaining a following distance gap to another vehicle. For an internalcombustion engine, engine braking may include use of a compressionrelease engine braking mechanism configured for decompression of selectcylinders, as well as switching to a lower gear. For electric motorautonomous vehicles, energy or power may be reduced to one or moremotors powering the wheels of the autonomous vehicle.

V.(m) Precautionary Slow Down—Signalized Intersection

When approaching a signalized intersection, an autonomous vehicle mayhave a precautionary slow down starting a pre-determined distance beforethe intersection, such as 90 meters away from the intersection, 100meters away from the intersection, 110 meters from the intersection,including 120 meters from the intersection.

An autonomous vehicle may have a maximum passing speed equal to theposted speed limit or up to 50 mph at the pre-determined distance awayfrom the intersection.

V.(n) Precautionary Slow Down— T Intersection

When traveling in the through lane directly perpendicular to thenon-through lane of a T-intersection, an autonomous vehicle may have aprecautionary slow down (e.g., using engine braking) of no more than apre-determined number of mph under the speed limit, such as 5 mph underthe speed limit, 10 mph under the speed limit, 15 mph under the speedlimit, and including 20 mph under the speed limit, if there is a vehiclestopped or approaching in the non-through lane.

V.(o) Downhill Grade—Engine Braking Preferred

When going downhill and deceleration is necessary, an engine brakingoperation is associated with a higher priority or preference than otherbraking operations. For a vehicle with an internal combustion engine,engine braking may include changing to a lower gear of the transmission(e.g., one with a smaller diameter than the current gear), generatingbackpressure or a vacuum in the engine, or selectively decompressing oneor more cylinders of the engine during a combustion stroke. A motor inan electrical vehicle, an autonomous vehicle that has battery orfuel-cell powered motor(s), may achieve engine braking by depowering themotor(s) and/or changing gears (if available).

V.(p) Uphill Grade—Power Adjustment Under Load

When going uphill, an autonomous vehicle may provide additional power asnecessary to maintain the targeted speed under different trailer loads.

V.(q) Decrease in Speed Limit—Engine Braking Preferred

When approaching a decrease in the speed limit, an autonomous vehiclemay proactively slow down to the targeted speed using engine brakingonly, unless additional deceleration is required for an evasivemaneuver. Engine braking may be accomplished in an autonomous vehiclewith an internal combustion engine by employing any of: J-brakes (i.e.,Jakes brakes), cylinder deactivation, or down-shifting of gears in thetransmission.

V.(r) Increase in Speed Limit—Optimal Acceleration

After passing a speed limit sign that indicates an increased speed limitvalue, an autonomous vehicle may accelerate to a speed at the increasedspeed limit value (and above a previous speed limit value). Theautonomous vehicle may use an acceleration rate that optimizes for bestfuel efficiency. In some examples, the autonomous vehicle uses a higheracceleration rate based on a route progress (e.g., the autonomousvehicle is behind schedule and route arrival is prioritized overperformance). Thus, in some examples, the autonomous vehicle referencesmap and route data and determines an acceleration rate accordingly. Insome examples, the oversight system may provide guidance when greateracceleration is needed. For example, the oversight system transmits aninstruction or command to the autonomous vehicle to use a greateracceleration rate.

V.(s) Limit Acceleration and Deceleration as Needed for Control

Under all speed adjustments, an autonomous vehicle may set limits on theacceleration and deceleration to ensure the tractor and trailer do notdestabilize and tip over, sway, or slip. The autonomous vehicle maydetermine orientation of itself using sensors including one or moreinertial measurement unit (IMU), data obtained by cameras and othersensor, and the like to determine not only the current orientation ofthe autonomous vehicle, but also so predict possible changes to theorientation of the autonomous vehicle based on a possible loss ofcontrol due to changes in the speed of the autonomous vehicle.

V.(t) Speed Control when Approaching Signalized Intersections

When approaching a local signalized intersection, an autonomous vehiclemay reduce its speed based a max speed equal to the posted speed limitor up to 50 mph. An autonomous vehicle may reach the target speed atleast a pre-determined distance before the intersection, such as 90meters away from the intersection, 100 meters away from theintersection, 110 meters from the intersection, including 120 metersprior to the stop line of the intersection, as measured from autonomousvehicle's front bumper to the stop line.

An autonomous vehicle may prefer to use engine braking or coasting toaccomplish the required deceleration.

V.(u) Curved Roads and Turns—Post-Apex Behavior

When on a curved road or intersection turn, an autonomous vehicle mayspeed up after passing the apex of the curve/turn with a ramp up valueto ensure smooth acceleration and deceleration.

V.(v) Curved Roads and Turns—Pre-Apex Behavior

When approaching or on a curved road or intersection turn, autonomousvehicle may slow down, preferably using engine braking, before reachingthe apex of the curve with a ramp up value that ensures smoothacceleration and deceleration.

V.(w) Speed Control—Speed Limit Timing

An autonomous vehicle may be at or below the speed limit by the time thefrontmost point of the autonomous vehicle combination reaches the speedlimit sign. The timing of when an autonomous vehicle reaches the speedlimit posted on a roadside sign may depend on the regulation of thejurisdiction in which the sign is located.

VI. Stopped Vehicles

An autonomous vehicle may encounter stopped vehicles while operatingalong a roadway. In some examples, a vehicle being stationary isabnormal in some contexts, and normal in other contexts. The autonomousvehicle may appropriately decide whether or not to navigate aroundstopped vehicles. As stopped vehicles can quickly resume motion, theautonomous vehicle must safely navigate around stopped vehicles.Further, navigation around a stopped vehicle (or multiple thereof) mustbe precise, even more so when the autonomous vehicle is atractor-trailer vehicle.

VI.(a) Classifications

A stopped vehicle (STV) may refer to a vehicle that isstationary/unmoving for any duration of time. This may include vehiclesstopped on the shoulder, vehicles stopped in the middle of the highway,vehicles stopped at a traffic light, and vehicles stopped in a trafficjam, among others.

An abnormal stopped vehicle may refer to a stopped vehicle that isstopped for reasons unrelated to traffic congestion or regulatorysigns/signals. For example, a stopped vehicle at a traffic light that ison red is not classified as an abnormal stopped vehicle, whereas anemergency vehicle stopped in the middle of the highway for an emergencyis classified an abnormal stopped vehicle.

A protruding abnormal stopped vehicle may refer to an abnormal stoppedvehicle that intersects more than one lane (including shoulders). Thatis, this type of stopped vehicle protrudes into at least one other lane.

An abnormal stopped vehicle bounding region may refer to a region thatincludes all abnormal stopped vehicles that are within close vicinity ofeach other. If there is only one abnormal stopped vehicle, then thebounding region is equivalent to the space taken up by that vehicle.Vehicles may be within a predetermined number of meters (e.g., 20, 30,40 meters) longitudinally of each other and 7.3 meters laterally to beconsidered within the same bounding region.

A traffic jam may refer to a line of road traffic at or near astandstill. To be considered a traffic jam, the average speed ofvehicles in all lanes within a predetermined number of meters (e.g., 125meters, 150 meters, 175 meters, 200 meters) of the autonomous vehiclemay be traveling less than a threshold speed (e.g., 8 mph, 10 mph, 12mph). To be considered a traffic jam, the lanes that are visible mayinclude a line of vehicles with an average bumper to bumper distanceless than a predetermined number of meters (e.g., 8 meters, 9 meters, 10meters, 12 meters, 15 meters) between each consecutive vehicle.

VI.(b) Preferred Lateral Distance to Stopped Vehicle

The autonomous vehicle may prefer to drive with a predetermined minimumlateral distance measured from the widest point of the autonomousvehicle to the widest point of the abnormal stopped vehicle boundingregion. The predetermined minimum lateral distance may be a tunableparameter with a nominal value of any of 8 feet, 10 feet, 12 feet, 14feet, or 15 feet.

VI.(c) Lane Change Priority—Lanes Intersected by STV

The lane change priority when in lanes that are penetrated by anabnormal stopped vehicle bounding region may be a critical safetypriority, or a high priority level compared to other priority levels.

VI.(d) Lane Change Priority—Lanes not Intersected by STV

The lane change priority when within a predetermined minimum lateraldistance but not in lanes that are penetrated by an abnormal stoppedvehicle bounding region may be non-critical safety priority, or apriority level less than a critical safety priority level. Apredetermined minimum lateral distance may be a tunable parameter with anominal value of any of 8 feet, 10 feet, 12 feet, 14 feet, or 15 feet.

VI.(e) Stopped Vehicle Lane Change Reaction Distance

If a lane change is required for an abnormal stopped vehicle boundingregion, an autonomous vehicle may react no later than the distancerequired to successfully change lanes before reaching the boundingregion or a predetermined minimum prescribed distance, whicheverdistance is greater. The predetermined minimum prescribed distance maybe a tunable parameter with a nominal value of any of 200 meters, 250meters, 275 meters 300 meters, 325 meters, or 350 meters.

VI.(f) Unable to Pass Stopped Vehicle

If an autonomous vehicle is driving in a lane that is penetrated by anabnormal stopped vehicle and the autonomous vehicle is unable to changelanes, the autonomous vehicle may come to a complete stop beforereaching the stopped vehicle. In some examples, a minimal risk conditioncommand, or a command for the vehicle to reach a minimal risk condition(e.g., a complete stop), is issued by the autonomous vehicle, anoperator, or the oversight system.

VI.(g) Slow Down and Pass Strategy for Stopped Vehicles

When unable to satisfy the preferred lateral distance to an abnormalstopped vehicle bounding region, an autonomous vehicle may slow down andpass the bounding region within the preferred lateral distance only if acollision can be avoided.

VI.(h) Max Passing Speed—Stopped Vehicle—Highway

The max highway passing speed when driving within the preferred lateraldistance of an abnormal stopped vehicle bounding region may be apredetermined velocity below the speed limit. The predetermined velocitymay be a tunable parameter with a nominal value of any of 15 MPH, 18MPH, 20 MPH, 22 MPH, or 25 MPH, for example.

VI.(i) Max Passing Speed—Stopped Vehicle—Local

The max local road passing speed when driving within a preferred lateraldistance of an abnormal stopped vehicle bounding region may be apredetermined velocity below the speed limit. The predetermined velocitymay be a tunable parameter with a nominal value of any of 8 MPH, 10 MPH,12 MPH, 15 MPH, 18 MPH, and 20 MPH, for example.

VI.(j) Minimum Lateral Distance to Pass STV

An autonomous vehicle may slow down and pass an abnormal stopped vehiclebounding region only if the autonomous vehicle can maintain a lateraldistance of at least a predetermined minimum distance with the boundingregion. The predetermined minimum distance may be a tunable parameterwith a nominal value of any of 1.0 meters, 1.2 meters, 1.3 meters, 1.4meters, 1.5 meters.

VI.(k) Stopped Emergency Vehicle

If the abnormal stopped vehicle bounding region includes an emergencyvehicle, the autonomous vehicle considers the abnormal stopped vehiclebounding region as an emergency vehicle and operates accordingly.

FIG. 10 illustrates a flowchart of example operations related to speedcontrol and handling near stopped vehicles. In some embodiments, theoperations are performed by the autonomous vehicle (e.g., an autonomouscontroller of the autonomous vehicle). In some embodiments, at leastsome of the operations may be performed by an oversight system or aremote computer, thereby conserving processing and computing effort atthe autonomous vehicle. The example operations are performed for anautonomous vehicle to which a trailer is coupled. For example, theautonomous vehicle is a tractor of a tractor-trailer combination.

At operation 1002, the autonomous vehicle continuously predicts atrailer trajectory that is distinct from a planned trajectory of anautonomous vehicle. In some embodiments, the trailer trajectory iscontinuously predicted using sensor data that indicates an angle of thetrailer with respect to a lengthwise axis of the autonomous vehicle. Thesensor data can include image data collected by rearward facing camerasthat captures an area in which the trailer is located. In someembodiments, the trailer trajectory is continuously predicted based ontrailer configuration data that includes a length of the trailer and arelative location at which the trailer is coupled to the rear of theautonomous vehicle. In some embodiments, the trailer trajectory iscontinuously predicted based on a weight of a trailer load in thetrailer and environmental conditions of the roadway. In someembodiments, the trailer trajectory is continuously predicted based on acurvature of the roadway that is indicated in map data accessible by thecontroller. In some embodiments, the trailer trajectory is continuouslypredicted based on a dynamic model of the trailer whose movement issimulated by the controller, and the dynamic model is configured withone of multiple pre-determined weights of trailer load.

At operation 1004, the autonomous vehicle determines that the trailertrajectory is within a minimum avoidance distance from a stopped orstationary vehicle located on the roadway on which the autonomousvehicle is located.

Referring to FIG. 11 , an example autonomous vehicle 302 is illustrated,and the autonomous vehicle 302 includes a trailer 106 that is connectedto a rear of a tractor, or an autonomous vehicle 105. A stopped vehicle1102 is located near the autonomous vehicle 302. The autonomous vehicle302 (a controller on the autonomous vehicle 302) is configured todetermine and predict trajectory paths of the trailer 106 and of thetractor 105. A planned trajectory 1104 of the tractor 105 isillustrated, and the autonomous vehicle 302 determines a trailertrajectory 1106 based at least on the planned trajectory 1104. In theillustrated example, the trailer trajectory 1106 fails to satisfy aminimum avoidance distance from the stopped vehicle 1102.

Returning to FIG. 10 , at operation 1006, the autonomous vehiclemodifies the planned trajectory of the autonomous vehicle such that thepredicted trailer trajectory satisfies the minimum avoidance distance.In some embodiments, operation 1006 includes iteratively modifying theplanned trajectory and predicting the trailer trajectory in response tothe iterative modifications until the trailer trajectory satisfies theminimum avoidance distance (or until another stopping condition, such asa maximum number of iterations, occurs). In some embodiments, themodified trajectory includes a lane change in response to the stationaryvehicle being located in a same lane as the autonomous vehicle. In someembodiments, the modified trajectory includes a complete stop based on afailure to predict a trailer trajectory that navigates around thestationary vehicle while satisfying the minimum avoidance distance awayfrom the stationary vehicle. In some embodiments, the modifiedtrajectory includes a complete stop based on the stationary vehicleoccupying all lanes of the roadway.

At operation 1008, the autonomous vehicle navigates (a controller of theautonomous vehicle causes the autonomous vehicle to navigate) along themodified trajectory based on instructions being transmitted (by thecontroller) to subsystems of the autonomous vehicle.

In some embodiments, the autonomous vehicle further determines a targetspeed of the autonomous vehicle based on the predicted trailertrajectory, and in response to the target speed being lower than acurrent speed of the autonomous vehicle, reaches the target speed usingengine braking. For example, an autonomous controller transmitsinstructions to perform engine braking to a braking and/or transmissionsubsystem of the autonomous vehicle. In some embodiments, the autonomousvehicle further determines a target speed of the autonomous vehiclebased on the predicted trailer trajectory and reaches the target speedat an acceleration rate that is less than a pre-determined accelerationlimit. For example, an autonomous controller transmits instructions tocause the autonomous vehicle to reach the target speed to a power and/orengine subsystem of the autonomous vehicle. In some embodiments, thetrailer trajectory is predicted based on a current speed of theautonomous vehicle, and the target speed is determined in connectionwith the modified trajectory to satisfy the minimum avoidance distance.

In some embodiments, the autonomous vehicle further continuouslypredicts a vertical tipping motion of the trailer based on a currentspeed of the autonomous vehicle, and the planned trajectory is modifiedto further satisfy a tipping angle limit for the trailer.

In some embodiments, the autonomous vehicle further determines alikelihood that the stationary vehicle will resume movement, and theminimum avoidance distance is based on the likelihood. In someembodiments, the autonomous vehicle predicts a future trajectory of thestationary vehicle, and the planned trajectory of the autonomous vehicleis modified such that the predicted trailer trajectory satisfies theminimum avoidance distance with respect to the future trajectory. Insome embodiments, the autonomous vehicle classifies the stationaryvehicle as a normal stationary vehicle or an abnormal stationaryvehicle, and the minimum avoidance distance from the stationary vehicleis based on the classifying.

In some embodiments, the autonomous vehicle associates the stationaryvehicle to a particular lane of the roadway, wherein the modifiedtrajectory is configured to cause the autonomous vehicle to travel to adifferent lane of the roadway than the particular lane.

In some embodiments, the modified trajectory satisfies a lane permissionparameter that is determined based on one or more motorcycles operatingon the roadway. In some embodiments, the modified trajectory avoidspenetration of an aggregate footprint are that surrounds respectivelocations of a group of motorcycles that are operating on the roadway.

VII. Trailer Trajectory Tracking

In some embodiments, an autonomous vehicle is configured to track and/orpredict a trajectory of a trailer coupled to the autonomous vehicle, andthe autonomous vehicle uses the trajectory of the trailer to navigatearound obstacles (e.g., a stopped vehicle) and along lanes of a roadway.In some embodiments, the autonomous vehicle tracks the trailertrajectory based on trailer angle feedback in real-time and/or predictsthe trailer trajectory based on a simulation of dynamic modelsrepresenting the autonomous vehicle and the trailer. With the trackingand prediction of trailer trajectory, an autonomous vehicle safelynavigates along a planned trajectory of waypoints along which thetrailer is expected or predicted to maintain safe distances away fromother objects.

Trailer trajectory tracking is applied in scenarios of road curvature,where the autonomous vehicle adjusts lane biasing within a current laneto account for road curvature. FIGS. 12A and 12B illustrate diagramsthat show road curvature affecting lane bias of a trailer.

In some embodiments, a lane bias adjustment value that is needed iscaused by two separate parts: road curvature, and trailer angle.

The road curve adjustment is calculated by assuming the trailer angle iszero. The road curve adjustment is then combined with the trailer angleadjustment. Approximation can be used during the calculations, with abounded error (e.g., 0.01 meters)

VII.(a) Road Curvature

FIG. 12A illustrates a geometry assuming trailer is straight and trailerangle is zero.

The lane bias adjustment caused by road curvature is then equal tosqrt(road_radius{circumflex over ( )}2+trailer_length{circumflex over( )}2)−road_radius.

This adjustment value is always positive, but in some examples, a signis assigned based on direction of curvature. In an example coordinatesystem, the left curve has a positive sign, and the lane bias to theleft (like in the illustrated example of FIG. 12A) has a negative sign.So, the final equation should be Lane bias adjustment caused by roadcurvature=(sqrt(road_radius{circumflex over( )}2+trailer_length{circumflex over( )}2)−road_radius)*sign(−curvature).

VII.(b) Trailer Angle

Trailer angle is the angle between the longitudinal directions of thetrailer and the tractor, as shown in FIG. 12B. A negative angle valuemeans trailer swings to the left, and positive means right.

The lane bias adjustment caused by trailer angle is then equal totrailer_length*sin(trailer_angle).

With this equation, trailer angle is negative when the trailer swings tothe left, and a lane bias to the right (like in the illustrated exampleof FIG. 12B) has a positive sign. So, the final equation should be: Lanebias adjustment caused by trailerangle=−trailer_angle=−trailer_length*sin(trailer_angle).

Then, the total lane bias adjustment is equal to the lane biasadjustment caused by road curvature+the lane bias adjustment caused bytrailer_angle.

Then, the final lane bias amount is equal to an original lane biasamount+total lane bias adjustment.

To avoid extreme cases such as sensor failure, the total lane biasadjustment can be limited to [−0.3,0.3] meters before adding to theoriginal lane bias amount.

In an applied example, when a detected object is located to the left ofthe autonomous vehicle, the autonomous vehicle lane biases to the right.The original lane bias amount is then positive, in this example, and thelane bias adjustment is limited to positive values. Similarly for adetected object on the right side, the lane bias adjustment is limitedto negative values. The principle is to only add more bias amount, andnever reduce it, because the tractor is still there and needs to beconsidered.

VII.(c) Smoothing Method

To reduce noise and self-exciting behavior, some methods may be used tosmooth the input signal.

For the road radius, three points from the map reference line are used,and the autonomous vehicle calculates the radius of the circle formed bythese 3 points. The points are sampled at the location of the autonomousvehicle, a point ahead of the autonomous vehicle (e.g., thirty metersahead), and a point behind the autonomous vehicle (e.g., thirty metersbehind).

For trailer_angle, a moving average filter may be used to reduce noise.

VIII. Overview

In order to perform the above features, an autonomous vehicle mayutilize any of the sensors, particularly the data obtained from thesensors, in conjunction with the computing facilities on-board theautonomous vehicle, such as those associated with or in communicationwith the VCU. Alternatively, or additionally, the above features may beexecuted by an autonomous vehicle with aid from an oversight system, orcontrol center, and optionally with aid from a human remote-controloperator. The oversight system, and in some cases the remote-controloperator, may communicate environmental data, map updates, instructions,or other information to an autonomous vehicle. An on-board map, such asa high-definition map, may be used by an autonomous vehicle toaccomplish some of the features described herein, particularly whenknowledge of location and local regulations (e.g., speed limits,obligations under the law, traffic conventions, intersection types) isneeded to complete a task described in the feature.

While this document refers to an autonomous truck, it should beunderstood that any autonomous ground vehicle may have such features.Autonomous vehicles which traverse over the ground may include: semis,tractor-trailers, 18 wheelers, lorries, class 8 vehicles, passengervehicles, transport vans, cargo vans, recreational vehicles, golf carts,transport carts, and the like.

While several embodiments have been provided in this disclosure, itshould be understood that the disclosed systems and methods might beembodied in many other specific forms without departing from the spiritor scope of this disclosure. The present examples are to be consideredas illustrative and not restrictive, and the intention is not to belimited to the details given herein. For example, the various elementsor components may be combined or integrated in another system or certainfeatures may be omitted, or not implemented.

In addition, techniques, systems, subsystems, and methods described andillustrated in the various embodiments as discrete or separate may becombined or integrated with other systems, modules, techniques, ormethods without departing from the scope of this disclosure. Other itemsshown or discussed as coupled or directly coupled or communicating witheach other may be indirectly coupled or communicating through someinterface, device, or intermediate component whether electrically,mechanically, or otherwise. Other examples of changes, substitutions,and alterations are ascertainable by one skilled in the art and may bemade without departing from the spirit and scope disclosed herein.

Implementations of the subject matter and the functional operationsdescribed in this patent document can be implemented in various systems,semiconductor devices, ultrasonic devices, digital electronic circuitry,or in computer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Implementations of aspects of thesubject matter described in this specification can be implemented as oneor more computer program products, e.g., one or more modules of computerprogram instructions encoded on a tangible and non-transitory computerreadable medium for execution by, or to control the operation of, dataprocessing apparatus. The computer readable medium can be amachine-readable storage device, a machine-readable storage substrate, amemory device, a composition of matter effecting a machine-readablepropagated signal, or a combination of one or more of them. The term“data processing unit” or “data processing apparatus” encompasses allapparatus, devices, and machines for processing data, including by wayof example a programmable processor, a computer, or multiple processorsor computers. The apparatus can include, in addition to hardware, codethat creates an execution environment for the computer program inquestion, e.g., code that constitutes processor firmware, a protocolstack, a database management system, an operating system, or acombination of one or more of them.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguages, including compiled or interpreted languages, and it can bedeployed in any form, including as a stand-alone program or as a module,component, subroutine, or other unit suitable for use in a computingenvironment. A computer program does not necessarily correspond to afile in a file system. A program can be stored in a portion of a filethat holds other programs or data (e.g., one or more scripts stored in amarkup language document), in a single file dedicated to the program inquestion, or in multiple coordinated files (e.g., files that store oneor more modules, sub programs, or portions of code). A computer programcan be deployed to be executed on one computer or on multiple computersthat are located at one site or distributed across multiple sites andinterconnected by a communication network.

The processes and logic flows described in this specification can beperformed by one or more programmable processors executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read only memory ora random-access memory or both. The essential elements of a computer area processor for performing instructions and one or more memory devicesfor storing instructions and data. Generally, a computer will alsoinclude, or be operatively coupled to receive data from or transfer datato, or both, one or more mass storage devices for storing data, e.g.,magnetic, magneto optical disks, or optical disks. However, a computerneed not have such devices. Computer readable media suitable for storingcomputer program instructions and data include all forms of nonvolatilememory, media and memory devices, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices. The processor and the memory can be supplemented by, orincorporated in, special purpose logic circuitry.

While this patent document contains many specifics, these should not beconstrued as limitations on the scope of any invention or of what may beclaimed, but rather as descriptions of characteristics that may bespecific to particular embodiments or sections of particular inventions.Certain characteristics that are described in this patent document inthe context of separate embodiments or sections can also be implementedin combination in a single embodiment or a single section. Conversely,various characteristics that are described in the context of a singleembodiment or single section can also be implemented in multipleembodiments or multiple sections separately or in any suitable subcombination. A feature or operation described in one embodiment or onesection can be combined with another feature or another operation fromanother embodiment or another section in any reasonable manner.Moreover, although characteristics may be described above as acting incertain combinations and even initially claimed as such, one or morecharacteristics from a claimed combination can in some cases be excisedfrom the combination, and the claimed combination may be directed to asub combination or variation of a sub combination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. Moreover, the separation of various system components in theembodiments described in this patent document should not be understoodas requiring such separation in all embodiments.

Only a few implementations and examples are described, and otherimplementations, enhancements and variations can be made based on whatis described and illustrated in this patent document.

What is claimed is:
 1. A method of operating an autonomous vehiclehaving a trailer coupled to a rear of the autonomous vehicle, whereinthe method comprises: continuously predicting, by a controller disposedon the autonomous vehicle, a trailer trajectory that is distinct from aplanned trajectory of the autonomous vehicle; determining, by thecontroller, that the predicted trailer trajectory is within a minimumavoidance distance away from a stationary vehicle located on a roadwayon which the autonomous vehicle is located; modifying, by thecontroller, the planned trajectory of the autonomous vehicle such thatthe predicted trailer trajectory satisfies the minimum avoidancedistance; and causing, by the controller, the autonomous vehicle tonavigate along the modified trajectory based on transmittinginstructions to one or more subsystems of the autonomous vehicle.
 2. Themethod of claim 1, wherein modifying the planned trajectory such thatthe predicted trailer trajectory satisfies the minimum avoidancedistance comprises: iteratively predicting the trailer trajectory usinga modified trajectory of the autonomous vehicle until the trailertrajectory satisfies the minimum avoidance distance.
 3. The method ofclaim 1, wherein the trailer trajectory is continuously predicted basedon sensor data collected by the controller that indicates an angle ofthe trailer with respect to a lengthwise axis of the autonomous vehicle.4. The method of claim 1, wherein the trailer trajectory is continuouslypredicted based on a curvature of the roadway that is indicated in mapdata accessible by the controller.
 5. The method of claim 1, wherein thetrailer trajectory is continuously predicted based on a dynamic model ofthe trailer whose movement is simulated by the controller, wherein thedynamic model is configured with one of multiple pre-determined weightsof trailer load.
 6. The method of claim 1, further comprising:determining a target speed of the autonomous vehicle based on thepredicted trailer trajectory; and in response to the target speed beinglower than a current speed of the autonomous vehicle, causing theautonomous vehicle to reach the target speed using engine braking. 7.The method of claim 1, further comprising continuously predicting avertical tipping motion of the trailer based on a current speed of theautonomous vehicle, wherein the planned trajectory is modified tofurther satisfy a tipping angle limit for the trailer.
 8. The method ofclaim 1, further comprising determining a likelihood that the stationaryvehicle will resume movement, wherein the minimum avoidance distance isbased on the likelihood.
 9. The method of claim 1, further comprisingpredicting a future trajectory of the stationary vehicle, wherein theplanned trajectory of the autonomous vehicle is modified such that thepredicted trailer trajectory satisfies the minimum avoidance distancewith respect to the future trajectory.
 10. The method of claim 1,further comprising classifying the stationary vehicle as a normalstationary vehicle or an abnormal stationary vehicle, wherein theminimum avoidance distance from the stationary vehicle is based on theclassifying.
 11. The method of claim 1, wherein the modified trajectoryincludes a lane change in response to the stationary vehicle beinglocated in a same lane as the autonomous vehicle.
 12. A system foroperating an autonomous vehicle, wherein the autonomous vehicle includesa trailer coupled to a rear of the autonomous vehicle, the systemcomprising a computer that includes a processor configured to executeinstructions to cause the system to: continuously predict a trailertrajectory that is distinct from a planned trajectory of the autonomousvehicle; determine that the predicted trailer trajectory is within aminimum avoidance distance away from a stationary vehicle located on aroadway on which the autonomous vehicle is located; modify the plannedtrajectory of the autonomous vehicle such that the predicted trailertrajectory satisfies the minimum avoidance distance; and cause theautonomous vehicle to navigate along the modified trajectory based ontransmitting instructions to one or more subsystems of the autonomousvehicle.
 13. The system of claim 12, wherein the trailer trajectory iscontinuously predicted based on trailer configuration data that includesa length of the trailer and a relative location at which the trailer iscoupled to the rear of the autonomous vehicle.
 14. The system of claim12, wherein the processor further causes the system to: determine atarget speed of the autonomous vehicle based on the predicted trailertrajectory; and cause the autonomous vehicle to reach the target speedat an acceleration rate that is less than a pre-determined accelerationlimit.
 15. The system of claim 12, wherein the processor further causesthe system to associate the stationary vehicle to a particular lane ofthe roadway, wherein the modified trajectory is configured to cause theautonomous vehicle to travel to a different lane of the roadway than theparticular lane.
 16. The system of claim 12, wherein the modifiedtrajectory includes a complete stop based on a failure to predict atrailer trajectory that navigates around the stationary vehicle whilesatisfying the minimum avoidance distance away from the stationaryvehicle.
 17. A non-transitory computer readable program storage mediumhaving code stored thereon, the code, when executed by a processor,causing the processor to: continuously predicting, for an autonomousvehicle having a trailer coupled to a rear of the autonomous vehicle, atrailer trajectory that is distinct from a planned trajectory of theautonomous vehicle; determine that the predicted trailer trajectory iswithin a minimum avoidance distance away from a stationary vehiclelocated on a roadway on which the autonomous vehicle is located; modifythe planned trajectory of the autonomous vehicle such that the predictedtrailer trajectory satisfies the minimum avoidance distance; and causethe autonomous vehicle to navigate along the modified trajectory basedon transmitting instructions to one or more subsystems of the autonomousvehicle.
 18. The non-transitory computer readable program storage mediumof claim 17, wherein the trailer trajectory is continuously predictedbased on and environmental conditions of the roadway and a weight of atrailer load.
 19. The non-transitory computer readable program storagemedium of claim 17, wherein the trailer trajectory is predicted based ona current speed of the autonomous vehicle, and wherein a target speed isdetermined in connection with the modified trajectory to satisfy theminimum avoidance distance.
 20. The non-transitory computer readableprogram storage medium of claim 17, wherein the modified trajectoryincludes a complete stop based on the stationary vehicle occupying alllanes of the roadway.